Room synchronization

The room synchronization technique is a form of concurrency control in computer science.

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 operation).