C++ Language/Std/Multithreading/MonitorsAndChannels

A "monitor" is a class that combines/encapsulates shared variables, mutually-exclusive access to those variables, and any other synchronization needed. A "channel" is a variation of a monitor; each channel is for either mutually-exclusive information-sending or mutually-exclusive information-receiving.

Additional information about monitors