# Room synchronization

> Mediated Wiki article. Canonical URL: https://mediated.wiki/source/Room_synchronization
> Markdown URL: https://mediated.wiki/source/Room_synchronization.md
> Source: https://en.wikipedia.org/wiki/Room_synchronization
> Source revision: 1245771237
> License: Creative Commons Attribution-ShareAlike 4.0 International (https://creativecommons.org/licenses/by-sa/4.0/)

Form of concurrency control

The **room synchronization** technique is a form of [concurrency control](/source/Concurrency_control) in [computer science](/source/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](/source/Fetch-and-add) operation).

## References

- G.E. Blelloch, P. Cheng, P.B. Gibbons, Room synchronizations, Annual ACM [Symposium on Parallel Algorithms and Architectures](/source/Symposium_on_Parallel_Algorithms_and_Architectures) 2001, 122–133 [\[1\]](http://doi.acm.org/10.1145/378580.378605)

## See also

- [Monitor (synchronization)](/source/Monitor_(synchronization)).

- The Single Threaded Apartment Model in Microsoft's [Component Object Model#Threading](/source/Component_Object_Model#Threading), as used by Visual Basic.

This computer science article is a stub. You can help Wikipedia by adding missing information.

- [v](https://en.wikipedia.org/wiki/Template:Comp-sci-stub)
- [t](/source/Template_talk%3AComp-sci-stub)
- [e](https://en.wikipedia.org/wiki/Special:EditPage/Template:Comp-sci-stub)

---
Adapted from the Wikipedia article [Room synchronization](https://en.wikipedia.org/wiki/Room_synchronization) by Wikipedia contributors ([contributor history](https://en.wikipedia.org/wiki/Room_synchronization?action=history)). Available under [Creative Commons Attribution-ShareAlike 4.0 International](https://creativecommons.org/licenses/by-sa/4.0/). Changes may have been made.
