queuing_mutex

[mutex.queuing_mutex]

queuing_mutex は、Mutex の要件をモデル化するクラスです。queuing_mutex は再帰的ではありません。queuing_mutex はスレッドが要求された順番で mutex のロックを取得するという点でフェアです。


// <oneapi/tbb/queuing_mutex.h> ヘッダーで定義 

namespace oneapi { 
namespace tbb { 

    class queuing_mutex { 
    public: 
        queuing_mutex() noexcept; 
        ~queuing_mutex(); 

        queuing_mutex(const queuing_mutex&) = delete; 
        queuing_mutex& operator=(const queuing_mutex&) = delete; 

        class scoped_lock; 

        static constexpr bool is_rw_mutex = false; 
        static constexpr bool is_recursive_mutex = false; 
        static constexpr bool is_fair_mutex = true; 
    }; 
} // namespace tbb 
} // namespace oneapi

メンバークラス

class scoped_lock

scoped_lock クラスに相当します。Mutex の要件を参照してください。

メンバー関数

queuing_mutex()

ロック解除された queuing_mutex を作成します。

~queuing_mutex()

ロック解除された queuing_mutex を破棄します。