Patent ID: 6951018

Claim:
A method for reducing overhead associated with providing a monitor for an object included in a multi-threaded, object-based computing system, the computing system including a plurality of monitors which includes a first monitor, the method comprising: setting a first pointer from the first monitor to the object; setting a second pointer from the object to the first monitor; setting a third pointer from a thread to the object, wherein the thread is arranged to execute on the object; and setting a reference substantially directly from the thread to the first monitor, wherein setting the reference includes updating contents of a reference field associated with the thread; invoking the object using the thread, wherein said invoking of the object using the thread includes initiating a wait action, the wait action being arranged to place the object into a wait state; and performing a memory reclamation during the wait state, wherein said performing of a memory reclamation during the wait state includes: identifying the contents of the reference field, using the contents of the reference field to identify the first monitor, and updating the contents of a monitor field associated with the first monitor to indicate that the first monitor is in use.