Home ⌂Doc Index ◂Up ▴
Intel(R) Threading Building Blocks Doxygen Documentation  version 4.2.3
tbb::queuing_mutex Class Reference

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.

34  {
35  q_tail = NULL;
36 #if TBB_USE_THREADING_TOOLS
38 #endif
39  }
atomic< scoped_lock * > q_tail
The last competitor requesting the lock.
void __TBB_EXPORTED_METHOD internal_construct()

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.

100  {
101  ITT_SYNC_CREATE(this, _T("tbb::queuing_mutex"), _T(""));
102 }
#define _T(string_literal)
Standard Windows style macro to markup the string literals.
Definition: itt_notify.h:59
#define ITT_SYNC_CREATE(obj, type, name)
Definition: itt_notify.h:115

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:

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.