1. A computer-implemented method for removing an object from a namespace, comprising: receiving a notification that an unload operation is starting, the unload notification identifying the object to be unloaded from the namespace; in response to the unload notification, detaching the identified object from the namespace while maintaining the identified object in a location in memory; identifying a device associated with the identified object as invalid; informing an operating system component that the device associated with the identified object is invalid; and in response to a notification that the associated device is no longer being used, causing the identified object to be freed from the location in memory.