null_mutex
[mutex.null_mutex]
null_mutex
は、Mutex の要件の概念を構文的にモデル化するクラスですが、何も行いません。Mutex を想定するテンプレートをインスタンス化するのに役立ちますが、実際にそのインスタンスで排他制御は必要ありません。
// <oneapi/tbb/null_mutex.h> ヘッダーで定義
namespace oneapi {
namespace tbb {
class null_mutex {
public:
constexpr null_mutex() noexcept;
~null_mutex();
null_mutex(const null_mutex&) = delete;
null_mutex& operator=(const null_mutex&) = delete;
class scoped_lock; void lock();
bool try_lock();
void unlock();
static constexpr bool is_rw_mutex = false;
static constexpr bool is_recursive_mutex = true;
static constexpr bool is_fair_mutex = true;
};
} // namespace tbb
} // namespace oneapi
メンバークラス
- class scoped_lock
scoped_lock
クラスに相当します。Mutex の要件を参照してください。
メンバー関数
- null_mutex()
ロック解除されたミューテックスを作成します。
- ~null_mutex()
ロック解除されたミューテックスを破棄します。
- void lock()
ロックを取得します。
- bool try_lock()
ロックの取得試みます (非ブロッキング)。
- void unlock()
ロックを解放します。