Ticket-Based Semaphores with Enhanced Waiting
AssigneeOracle International Corporation
InventorsDavid Dice, Alex Kogan
Life of this patent
Estimating the term…
Loading patent…
AssigneeOracle International Corporation
InventorsDavid Dice, Alex Kogan
Estimating the term…
A computer comprising one or more processors and memory may implement multiple threads that perform synchronization operations using a semaphore comprising an allocation field and a grant field. Upon entry to a semaphore wait operation, a thread allocates a ticket by atomically copying a ticket value contained in the allocation field and incrementing the allocation field. The thread computes a difference between the allocated ticket to the grant field representing a number of waiting threads. If the number is above the threshold, the thread enters a long term wait operation comprising determining a location for long term wait value and waiting on changes to that value. If the number is below the threshold or the long term wait operation is complete, the thread waits for the grant value to equal the ticket to complete waiting on the semaphore.
A computer-implemented method, comprising:
One or more non-transitory computer-accessible storage media storing program instructions that when executed on or across one or more processors cause the one or more processors to perform:
A system, comprising:
Dependencies are inferred from the claim text.