Classes | |
struct | tbb::atomic< T > |
Primary template for atomic. More... | |
class | tbb::mutex |
Wrapper around the platform's native reader-writer lock. More... | |
class | tbb::null_mutex |
A mutex which does nothing. More... | |
class | tbb::null_rw_mutex |
A rw mutex which does nothing. More... | |
class | tbb::queuing_mutex |
Queuing mutex with local-only spinning. More... | |
class | tbb::queuing_rw_mutex |
Queuing reader-writer mutex with local-only spinning. More... | |
class | tbb::interface5::reader_writer_lock |
Writer-preference reader-writer lock with local-only spinning on readers. More... | |
class | tbb::recursive_mutex |
class | tbb::spin_mutex |
A lock that occupies a single byte. More... | |
class | tbb::spin_rw_mutex_v3 |
Fast, unfair, spinning reader-writer lock with backoff and writer-preference. More... | |
Typedefs | |
typedef interface7::internal::padded_mutex < interface7::internal::x86_eliding_mutex, false > | tbb::speculative_spin_mutex |
A cross-platform spin mutex with speculative lock acquisition. More... | |
typedef interface7::internal::padded_mutex < tbb::interface7::internal::x86_rtm_rw_mutex, true > | tbb::interface7::speculative_spin_rw_mutex |
A cross-platform spin reader/writer mutex with speculative lock acquisition. More... | |
typedef interface7::internal::padded_mutex< spin_mutex, false > tbb::speculative_spin_mutex |
A cross-platform spin mutex with speculative lock acquisition.
On platforms with proper HW support, this lock may speculatively execute its critical sections, using HW mechanisms to detect real data races and ensure atomicity of the critical sections. In particular, it uses Intel(R) Transactional Synchronization Extensions (Intel(R) TSX). Without such HW support, it behaves like a spin_mutex. It should be used for locking short critical sections where the lock is contended but the data it protects are not. If zero-initialized, the mutex is considered unheld.
typedef interface7::internal::padded_mutex< tbb::spin_rw_mutex, true > tbb::interface7::speculative_spin_rw_mutex |
A cross-platform spin reader/writer mutex with speculative lock acquisition.
On platforms with proper HW support, this lock may speculatively execute its critical sections, using HW mechanisms to detect real data races and ensure atomicity of the critical sections. In particular, it uses Intel(R) Transactional Synchronization Extensions (Intel(R) TSX). Without such HW support, it behaves like a spin_rw_mutex. It should be used for locking short critical sections where the lock is contended but the data it protects are not.