名稱空間
變體
操作

std::launch

來自 cppreference.com
< cpp‎ | thread
 
 
併發支援庫
執行緒
(C++11)
(C++20)
this_thread 名稱空間
(C++11)
(C++11)
(C++11)
協同取消
互斥
(C++11)
通用鎖管理
(C++11)
(C++11)
(C++11)
(C++11)
(C++11)
條件變數
(C++11)
訊號量
門閂和屏障
(C++20)
(C++20)
期值
(C++11)
(C++11)
(C++11)
launch
(C++11)
安全回收
(C++26)
危險指標
原子型別
(C++11)
(C++20)
原子型別的初始化
(C++11)(C++20 中已棄用)
(C++11)(C++20 中已棄用)
記憶體排序
(C++11)(C++26 中已棄用)
原子操作的自由函式
原子標誌的自由函式
 
在標頭檔案 <future> 中定義
enum class launch : /* 未指定 */ {

    async =    /* 未指定 */,
    deferred = /* 未指定 */,
    /* 由實現定義 */

};
(C++11 起)

std::launch 是一個 BitmaskType。它指定了由 std::async 函式執行的任務的啟動策略。

[編輯] 常量

標準庫定義了以下表示單個位的常量

名稱 解釋
async 任務在一個不同的執行緒上執行,可能首先建立並啟動它
deferred 任務在其結果首次被請求時(惰性求值)在呼叫執行緒上執行

此外,實現允許

  • 定義額外的位和位掩碼,以指定適用於啟動策略子集的任務互動限制,以及
  • std::async 的第一個(預設)過載啟用這些額外的位掩碼。

[編輯] 缺陷報告

下列更改行為的缺陷報告追溯地應用於以前出版的 C++ 標準。

缺陷報告 應用於 釋出時的行為 正確的行為
LWG 2102 C++11 std::launch 是一個實現定義型別 它不是實現定義的

[編輯] 另請參閱

(C++11)
非同步(可能在新執行緒中)執行一個函式並返回一個將儲存結果的 std::future
(函式模板) [編輯]