Method of controlling thread access to a synchronization object
First Claim
Patent Images
1. A method of controlling thread access to a synchronization object, comprising:
- sending a signal to wake a sleeping first thread after a second thread releases a synchronization object; and
setting, by the second thread, a value of the synchronization object to transition the synchronization object to an in-flight state indicating that the synchronization object is available to be acquired, the first thread to remain awake for a predetermined time if a third thread acquires the synchronization object in the in-flight state before the first thread acquires the synchronization object in the in-flight state, wherein the in-flight state is where the second thread has released the synchronization object and the first thread has received a wake up signal but before the first thread is able to execute; and
setting, by the first thread, the value of the synchronization object to transition the synchronization object from the in-flight state to a want-lock state indicating that the synchronization object is only available to be acquired by the first thread after the third thread releases the synchronization object.
2 Assignments
0 Petitions
Accused Products
Abstract
A method of controlling thread access to a synchronization object is described. The method comprises waking a sleeping first thread after release, by a second thread, of a synchronization object in a normal state and causing, by the first thread, the synchronization object to transition to a want-lock state, the synchronization object being acquirable by the first thread prior to being acquirable by the second thread.
8 Citations
23 Claims
-
1. A method of controlling thread access to a synchronization object, comprising:
-
sending a signal to wake a sleeping first thread after a second thread releases a synchronization object; and setting, by the second thread, a value of the synchronization object to transition the synchronization object to an in-flight state indicating that the synchronization object is available to be acquired, the first thread to remain awake for a predetermined time if a third thread acquires the synchronization object in the in-flight state before the first thread acquires the synchronization object in the in-flight state, wherein the in-flight state is where the second thread has released the synchronization object and the first thread has received a wake up signal but before the first thread is able to execute; and setting, by the first thread, the value of the synchronization object to transition the synchronization object from the in-flight state to a want-lock state indicating that the synchronization object is only available to be acquired by the first thread after the third thread releases the synchronization object. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12)
-
-
13. A tangible computer-readable storage medium storing instructions that, when executed, cause a processor to at least:
implement a synchronization object comprising a state parameter indicating a state of the synchronization object, the state parameter configured to transition the state to at least an in-flight state indicating that the synchronization object is available to be acquired by any thread not sleeping, wherein the in-flight state is where a first thread has released the synchronization object and a second thread has received a wake up signal but before the second thread is able to execute, and the state parameter is configured to transition the state of the synchronization object from the in-flight state to a want-lock state, the want-lock state to indicate that the synchronization object is only available to be acquired by the second thread after a third thread acquires and releases the synchronization object. - View Dependent Claims (14, 15, 16, 17, 18, 19, 20, 21)
-
22. A tangible computer-readable storage medium storing instructions which, when executed by a processor, cause the processor to at least:
-
send a signal to wake a sleeping first thread; release, by a second thread, a synchronization object; and set, by the second thread, a value of the synchronization object to transition the synchronization object to an in-flight state indicating that the synchronization object is available to be acquired, the first thread to remain awake for a predetermined time if a third thread acquires the synchronization object in the in-flight state before the first thread acquires the synchronization object in the in-flight state, wherein the in-flight state is where the second thread has released the synchronization object and the first thread has received a wake up signal but before the first thread is able to execute; and set, by the first thread, the value of the synchronization object to transition the synchronization object from the in-flight state to a want-lock state indicating that the synchronization object is only available to be acquired by the first thread after the third thread releases the synchronization object. - View Dependent Claims (23)
-
Specification