Patent ID: 8689232

Claim:
A method comprising: receiving, by a computer system, a request from a first application executing on the computer system, the request indicating that the first application seeks access to an object stored in a shared object space, the shared object space including a memory space configured to store one or more data objects accessible by the first application and by a second application executing concurrently with the first application, the object having a header; determining, while processing the request, by the computer system, that the second application is accessing the object, the determining including obtaining from the header of the object a reference to a portion of a lock table that stores an identifier of the second application, the lock table being a data structure associated with the object and configured to store identifiers of applications seeking access to the object or currently accessing the object; upon receiving a notification from the second application indicating that the second application has finished accessing the object, by the computer system: modifying the lock table, including removing the identifier of the second application from the lock table; and modifying the header of the object, including storing, as a replacement of the reference currently stored in the header, a reference to a portion of the lock table that stores an identifier of the first application; and, after modifying the lock table and modifying the header, allowing the first application to access the object in response to the received request.