US 11,914,996 B2
Ticket locks with enhanced waiting
David Dice, Foxboro, MA (US); and Alex Kogan, Needham, MA (US)
Assigned to Oracle International Corporation, Redwood City, CA (US)
Filed by Oracle International Corporation, Redwood City, CA (US)
Filed on Aug. 5, 2022, as Appl. No. 17/817,854.
Application 17/817,854 is a continuation of application No. 16/572,532, filed on Sep. 16, 2019, granted, now 11,442,730.
Claims priority of provisional application 62/734,687, filed on Sep. 21, 2018.
Prior Publication US 2022/0374287 A1, Nov. 24, 2022
Int. Cl. G06F 12/00 (2006.01); G06F 9/30 (2018.01); G06F 12/0802 (2016.01); G06F 9/52 (2006.01); G06F 13/16 (2006.01); G06F 9/38 (2018.01)
CPC G06F 9/3009 (2013.01) [G06F 9/3802 (2013.01); G06F 9/52 (2013.01); G06F 9/526 (2013.01); G06F 12/0802 (2013.01); G06F 13/1663 (2013.01); G06F 13/1689 (2013.01); G06F 2212/60 (2013.01)] 20 Claims
OG exemplary drawing
 
1. A method comprising:
performing, by a thread of a plurality of threads executed on one or more processors, an operation to allocate a lock for exclusive access to a resource, comprising:
selecting a location of a long term wait value different from a location of a grant value indicating a value of a ticket currently holding the lock;
waiting for the long term wait value at the selected location to indicate that a contention condition for the thread has been met; and
waiting, responsive to the contention condition being met, for the grant value to equal a value of a ticket held by the thread.