task_handle

[scheduler.task_handle]

task_handle タイプのインスタンスは、遅延タスク・オブジェクトを所有します。


namespace oneapi { 
namespace tbb { 

    class task_handle { 
    public: 
        task_handle(); 
        task_handle(task_handle&& src); 

        ~task_handle(); 

        task_handle& operator=(task_handle&& src); 

        explicit operator bool() const noexcept; 
    }; 

    bool operator==(task_handle const& h, std::nullptr_t) noexcept; 
    bool operator==(std::nullptr_t, task_handle const& h) noexcept; 

    bool operator!=(task_handle const& h, std::nullptr_t) noexcept; 
    bool operator!=(std::nullptr_t, task_handle const& h) noexcept; 

} // namespace tbb 
} // namespace oneapi

メンバー関数

task_handle()

空の task_handle オブジェクトを生成します。

task_handle(task_handle &&src)

ムーブ・セマンティクスを使用して、src の内容で task_handle オブジェクトを作成します。生成後 src は空になります。

~task_handle()

task_handle オブジェクトと関連するタスクが存在する場合、それを破棄します。

task_handle &operator=(task_handle &&src)

ムーブ・セマンティクスを使用して、src の内容で task_handle オブジェクトを作成します。割り当て後 src は空になります。すでに関連付けられているタスク・オブジェクトがあれば、割り当て前に破棄されます。

戻り値: *this への参照を返します。

explicit operator bool() const noexcept

*this に関連付けられたタスク・オブジェクトがあるか確認します。

戻り値: *this が空でない場合は true、それ以外は false を返します。

非メンバー関数


bool operator==(task_handle const& h, std::nullptr_t) noexcept 
bool operator==(std::nullptr_t, task_handle const& h) noexcept

戻り値: h 空の場合は true、それ以外は false を返します。


bool operator!=(task_handle const& h, std::nullptr_t) noexcept 
bool operator!=(std::nullptr_t, task_handle const& h) noexcept

戻り値: h が空でない場合は true、それ以外は false を返します。