queuing_mutex Class


Class that models Mutex Concept that is fair and scalable.


class queuing_mutex;


#include "tbb/queuing_mutex.h"


A queuing_mutex models the Mutex Concept. A queuing_mutex is scalable, in the sense that if a thread has to wait to acquire the mutex, it spins on its own local cache line. A queuing_mutex is fair. Threads acquire a lock on a mutex in the order that they request it. A queuing_mutex is not recursive.

The current implementation does busy-waiting, so using a queuing_mutex may degrade system performance if the wait is long.


See Mutex Concept.

See Also

For more complete information about compiler optimizations, see our Optimization Notice.