33 __TBB_ASSERT( my_mutex,
"release on spin_mutex::scoped_lock that is not holding a lock" );
41 __TBB_ASSERT( !my_mutex,
"already holding a lock on a spin_mutex" );
void __TBB_EXPORTED_METHOD internal_release()
Like release, but with ITT instrumentation.
A lock that occupies a single byte.
void __TBB_EXPORTED_METHOD internal_acquire(spin_mutex &m)
Like acquire, but with ITT instrumentation.
bool __TBB_TryLockByte(__TBB_atomic_flag &flag)
__TBB_Flag __TBB_LockByte(__TBB_atomic_flag &flag)
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 _T(string_literal)
Standard Windows style macro to markup the string literals.
bool __TBB_EXPORTED_METHOD internal_try_acquire(spin_mutex &m)
Like try_acquire, but with ITT instrumentation.
void __TBB_EXPORTED_METHOD internal_construct()
Internal constructor with ITT instrumentation.
__TBB_atomic_flag flag
0 if lock is released, 1 if lock is acquired.
#define ITT_SYNC_CREATE(obj, type, name)
#define __TBB_ASSERT(predicate, comment)
No-op version of __TBB_ASSERT.
#define ITT_NOTIFY(name, obj)
spin_mutex * my_mutex
Points to currently held mutex, or NULL if no lock is held.