Room synchronization
   HOME

TheInfoList



OR:

The room synchronization technique is a form of
concurrency control In information technology and computer science, especially in the fields of computer programming, operating systems, multiprocessors, and databases, concurrency control ensures that correct results for concurrent operations are generated, while ...
in
computer science Computer science is the study of computation, automation, and information. Computer science spans theoretical disciplines (such as algorithms, theory of computation, information theory, and automation) to practical disciplines (includi ...
. The room synchronization problem involves supporting a set of ''m'' mutually exclusive "rooms" where any number of users can execute code simultaneously in a shared room (any one of them), but no two users can simultaneously execute code in separate rooms. Room synchronization can be used to implement asynchronous parallel queues and stacks with constant time access (assuming a
fetch-and-add In computer science, the fetch-and-add CPU instruction (FAA) atomically increments the contents of a memory location by a specified value. That is, fetch-and-add performs the operation :increment the value at address by , where is a memory loca ...
operation).


References

* G.E. Blelloch, P. Cheng, P.B. Gibbons, Room synchronizations, Annual ACM Symposium on Parallel Algorithms and Architectures 2001, 122–13


See also

*
Monitor (synchronization) In concurrent programming, a monitor is a synchronization construct that allows threads to have both mutual exclusion and the ability to wait (block) for a certain condition to become false. Monitors also have a mechanism for signaling other th ...
. * The Single Threaded Apartment Model in Microsoft's Component Object Model#Threading, as used by Visual Basic. {{Comp-sci-stub Concurrency control