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