Serializing event handling in a threaded system with no wait states
AssigneeInternational Business Machines Corporation
InventorsWilliam S. Cadden, Patricia E. Heywood
Life of this patent
Estimating the term…
Abstract
Event handling in multinode data processing networks, in which data structures are shared between nodes and are subject to concurrent requests for access, is facilitated through the use of a separate small data structure (bit array or linked list) which permits an event handler to hand off the task of accessing the data structure to an event handler which is already accessing data from the same data structure. This eliminates the need for locking arrangements and/or the use of special coordinating event handlers.
Claims18
A computer implemented method for handling events in a data processing system in which at least two threads access the same data, said method comprising the step of:
- handing off the task of accessing said data from a first event handler to a second event handler that is already accessing said data with the use of a compare and swap function to insure that data written between threads is not lost when more than one thread attempts to write to a variable at the same time, said compare and swap function updating an array which contains an indication of a list of events to be handled by the thread that is currently handling events wherein the array is changed from the “no events and no thread handling events” indication to the “no events and a thread is handling events” indication, and in which, upon condition that the thread is unsuccessful in changing the array indication, the thread makes a local copy of the array.
Dependencies are inferred from the claim text.