Intel(R) Threading Building Blocks Doxygen Documentation
version 4.2.3
|
Go to the documentation of this file.
22 #if defined(_MSC_VER) && defined(_Wp64)
24 #pragma warning (disable: 4244)
30 static inline T
CAS(
volatile T &
addr, T newv, T oldv) {
void pause()
Pause for a while.
void __TBB_EXPORTED_METHOD internal_construct()
#define __TBB_ASSERT(predicate, comment)
No-op version of __TBB_ASSERT.
static const state_t WRITER
#define ITT_NOTIFY(name, obj)
void __TBB_EXPORTED_METHOD internal_acquire_reader()
Internal acquire read lock.
Class that implements exponential backoff.
static const state_t WRITER_PENDING
bool __TBB_EXPORTED_METHOD internal_try_acquire_reader()
Internal try_acquire read lock.
bool __TBB_EXPORTED_METHOD internal_upgrade()
Internal upgrade reader to become a writer.
#define ITT_SYNC_CREATE(obj, type, name)
void __TBB_AtomicAND(volatile void *operand, uintptr_t addend)
static T CAS(volatile T &addr, T newv, T oldv)
void __TBB_EXPORTED_METHOD internal_downgrade()
Out of line code for downgrading a writer to a reader.
static const state_t BUSY
bool __TBB_EXPORTED_METHOD internal_try_acquire_writer()
Internal try_acquire write lock.
bool __TBB_EXPORTED_METHOD internal_acquire_writer()
Internal acquire write lock.
void __TBB_EXPORTED_METHOD internal_release_reader()
Internal release read lock.
static const state_t ONE_READER
#define _T(string_literal)
Standard Windows style macro to markup the string literals.
void __TBB_EXPORTED_METHOD internal_release_writer()
Out of line code for releasing a write lock.
void const char const char int ITT_FORMAT __itt_group_sync s
void __TBB_AtomicOR(volatile void *operand, uintptr_t addend)
atomic< T > & as_atomic(T &t)
static const state_t READERS
void const char const char int ITT_FORMAT __itt_group_sync x void const char ITT_FORMAT __itt_group_sync s void ITT_FORMAT __itt_group_sync p void ITT_FORMAT p sync_releasing
#define __TBB_FetchAndAddWrelease(P, V)
state_t state
State of lock.
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.