UNIX(多线程):19---Future 类型详解
生活随笔
收集整理的這篇文章主要介紹了
UNIX(多线程):19---Future 类型详解
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
Future 類型詳解
本文主要介紹 std::future,std::shared_future 以及 std::future_error,另外還會介紹 <future> 頭文件中的 std::async,std::future_category 函數以及相關枚舉類型。
std::future 詳解
std::future 概述
前面已經多次提到過 std::future,那么 std::future 究竟是什么呢?簡單地說,std::future 可以用來獲取異步任務的結果,因此可以把它當成一種簡單的線程間同步的手段。std::future 通常由某個 Provider 創建,你可以把 Provider 想象成一個異步任務的提供者,Provider 在某個線程中設置共享狀態的值,與該共享狀態相關聯的 std::future 對象調用 get(通常在另外一個線程中) 獲取該值,如果共享狀態的標志不為 ready,則調用 std::future::get 會阻塞當前的調用者,直到 Provider 設置了共享狀態的值(此時共享狀態的標志變為 ready),std::future::get 返回異步任務的值或異常(如果發生了異常)。
一個有效(valid<
總結
以上是生活随笔為你收集整理的UNIX(多线程):19---Future 类型详解的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: boost库linux编译安装
- 下一篇: 对于linux socket与epoll