tbb::queuing_mutex Class Reference
Synchronization

Queuing mutex with local-only spinning. More...

`#include <queuing_mutex.h>`

Inheritance diagram for tbb::queuing_mutex:
Collaboration diagram for tbb::queuing_mutex:

## Classes

class | scoped_lock
| The scoped locking pattern. More...

## Public Member Functions

| queuing_mutex ()
| Construct unacquired mutex. More...
void __TBB_EXPORTED_METHOD | internal_construct ()

## Static Public Attributes

static const bool | is_rw_mutex = false
static const bool | is_recursive_mutex = false
static const bool | is_fair_mutex = true

## Private Attributes

atomic< scoped_lock * > | q_tail
| The last competitor requesting the lock. More...

## Detailed Description

Queuing mutex with local-only spinning.

Definition at line 31 of file queuing_mutex.h.

## Constructor & Destructor Documentation

## queuing_mutex()

tbb::queuing_mutex::queuing_mutex | ( |  | ) |

inline

Construct unacquired mutex.

Definition at line 34 of file queuing_mutex.h.

{
q_tail = NULL;
#if TBB_USE_THREADING_TOOLS
internal_construct();
#endif
}

References internal_construct(), and q_tail.

Here is the call graph for this function:

## Member Function Documentation

## internal_construct()

void tbb::queuing_mutex::internal_construct | ( |  | ) |

Definition at line 100 of file queuing_mutex.cpp.

{
ITT_SYNC_CREATE(this, _T("tbb::queuing_mutex"), _T(""));
}

References _T, and ITT_SYNC_CREATE.

Referenced by queuing_mutex().

Here is the caller graph for this function:

## Member Data Documentation

## is_fair_mutex

const bool tbb::queuing_mutex::is_fair_mutex = true

static

Definition at line 98 of file queuing_mutex.h.

## is_recursive_mutex

const bool tbb::queuing_mutex::is_recursive_mutex = false

static

Definition at line 97 of file queuing_mutex.h.

## is_rw_mutex

const bool tbb::queuing_mutex::is_rw_mutex = false

static

Definition at line 96 of file queuing_mutex.h.

## q_tail

atomic<scoped_lock*> tbb::queuing_mutex::q_tail

private

The last competitor requesting the lock.

Definition at line 102 of file queuing_mutex.h.

Referenced by tbb::queuing_mutex::scoped_lock::acquire(), queuing_mutex(), and tbb::queuing_mutex::scoped_lock::try_acquire().

The documentation for this class was generated from the following files:

- queuing_mutex.h
- queuing_mutex.cpp

tbb::queuing_mutex::q_tail
atomic< scoped_lock * > q_tail
The last competitor requesting the lock.
Definition: queuing_mutex.h:102
tbb::queuing_mutex::internal_construct
void __TBB_EXPORTED_METHOD internal_construct()
Definition: queuing_mutex.cpp:100
ITT_SYNC_CREATE
#define ITT_SYNC_CREATE(obj, type, name)
Definition: itt_notify.h:115
_T
#define _T(string_literal)
Standard Windows style macro to markup the string literals.
Definition: itt_notify.h:59

Copyright © 2005-2020 Intel Corporation. All Rights Reserved.

Intel, Pentium, Intel Xeon, Itanium, Intel XScale and VTune are registered trademarks or trademarks of Intel Corporation or its subsidiaries in the United States and other countries.

* Other names and brands may be claimed as the property of others.