與 C++11 多執行緒相關的標頭檔案
C++11 新標準中引入了四個標頭檔案來支援多執行緒程式設計,他們分別是<atomic> ,<thread>,<mutex>,<condition_variable>和<future>。
- <atomic>:該頭文主要聲明瞭兩個類, std::atomic 和 std::atomic_flag,另外還聲明瞭一套 C 風格的原子型別和與 C 相容的原子操作的函式。
- <thread>:該標頭檔案主要聲明瞭 std::thread 類,另外 std::this_thread 名稱空間也在該標頭檔案中。
- <mutex>:該標頭檔案主要聲明瞭與互斥量(mutex)相關的類,包括 std::mutex 系列類,std::lock_guard, std::unique_lock, 以及其他的型別和函式。
- <condition_variable>:該標頭檔案主要聲明瞭與條件變數相關的類,包括 std::condition_variable 和 std::condition_variable_any。
- <future>:該標頭檔案主要聲明瞭 std::promise, std::package_task 兩個 Provider 類,以及 std::future 和 std::shared_future 兩個 Future 類,另外還有一些與之相關的型別和函式,std::async() 函式就宣告在此標頭檔案中。