Method, system, and apparatus for managing access to a data object
First Claim
1. A mechanism for managing a plurality of access requests for a data object, comprising:
- a lock control identifying whether a requested data object is in use;
a waiter control identifying whether at least one of the plurality of access requests have been denied immediate access to the data object and is currently waiting for access to the data object; and
a list optimize control identifying whether one of the plurality of access requests is currently optimizing a waiters list of access requests waiting to access to the data object.
2 Assignments
0 Petitions
Accused Products
Abstract
In accordance with an embodiment of this invention, a mechanism for managing a plurality of access requests for a data object is provided. The mechanism includes a lock control identifying whether a requested data object is in use and a waiter control identifying whether at least one of the plurality of access requests have been denied immediate access to the data object and is currently waiting for access to the data object. Additionally, the mechanism maintains a list optimize control identifying whether one of the plurality of access requests is currently optimizing a waiters list of access requests waiting to access to the data object.
93 Citations
32 Claims
-
1. A mechanism for managing a plurality of access requests for a data object, comprising:
-
a lock control identifying whether a requested data object is in use;
a waiter control identifying whether at least one of the plurality of access requests have been denied immediate access to the data object and is currently waiting for access to the data object; and
a list optimize control identifying whether one of the plurality of access requests is currently optimizing a waiters list of access requests waiting to access to the data object. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. A computer readable medium having computer-executable components for managing access to a data object, the components comprising:
-
a waiters list component, wherein the waiters list component maintains a respective wait block representative of each access request that have been denied immediate access to the data object and are waiting to access the data object; and
a locking mechanism component controlling access to the data object, the locking mechanism comprising;
a reference to the waiters list; and
an optimization control for the waiters list. - View Dependent Claims (12, 13, 14, 15, 16, 17, 18)
-
-
19. A method for maintaining a waiters list of access requests that are waiting to access a data object that is locked, the method comprising:
-
receiving an access request for the data object;
generating a wait block representative of the access request;
adding the wait block to the front of the waiters list;
determining if the waiters list is currently being optimized;
if it is determined that the waiters list is not currently being optimized, optimizing the waiters list;
determining if the lock on the data object has been released; and
if it is determined that the lock in the data object has been released, allowing at least one of the access requests identified by a wait block to attempt to access the data object. - View Dependent Claims (20, 21, 22, 23, 24, 25, 26, 27)
-
-
28. A method for controlling access to a data object, the method comprising:
-
receiving a first exclusive access request for the data object;
placing an exclusive lock on the data object;
receiving a second access request for the data object;
creating a wait block representative of the second access request;
adding the wait block to a waiters list;
determining whether the waiters list is currently being optimized; and
if it is determined that the waiters list is not currently being optimized, allowing the second access request to optimize the waiters list. - View Dependent Claims (29, 30, 31, 32)
-
Specification