?
This document uses PHP Chinese website manual Release
如果編譯器定義宏常量__STDC_NO_THREADS __(C11),則不會提供頭文件<threads.h>和此處列出的所有名稱。
| 在頭文件<threads.h>中定義 |
|:----|
| thrd_t | 實現(xiàn)定義的標識線程的完整對象類型|
| thrd_create(C11)| 創(chuàng)建一個線程(函數(shù))|
| thrd_equal(C11)| 檢查兩個標識符是否引用同一個線程(函數(shù))|
| thrd_current(C11)| 獲取當前線程標識符(函數(shù))|
| thrd_sleep(C11)| 暫停執(zhí)行調用線程一段時間(函數(shù))|
| thrd_yield(C11)| 產(chǎn)生當前時間片(函數(shù))|
| thrd_exit(C11)| 終止調用線程(函數(shù))|
| thrd_detach(C11)| 分離線程(函數(shù))|
| thrd_join(C11)| 直到線程終止(函數(shù))|為止
| thrd_successthrd_timedoutthrd_busythrd_nomemthrd_error(C11)| 表示線程錯誤狀態(tài)(常量)|
| thrd_start_t(C11)| 函數(shù)指針類型int(*)(void *)的typedef,由thrd_create(typedef)使用|
| 在頭文件<threads.h>中定義 |
|:----|
| mtx_t | mutex 標識符|
| mtx_init(C11)| 創(chuàng)建一個mutex(函數(shù))|
| mtx_lock(C11)| 阻塞直到鎖定一個 mutex(函數(shù))|
| mtx_timedlock(C11)| 阻塞直到鎖定互斥鎖或超時(函數(shù))|
| mtx_trylock(C11)| 如果已鎖定(功能),則鎖定互斥鎖或返回而不阻塞|
| mtx_unlock(C11)| 解鎖互斥(函數(shù))|
| mtx_destroy(C11)| 破壞一個互斥(函數(shù))|
| mtx_plainmtx_recursivemtx_timed(C11)(C11)(C11)| 定義互斥(枚舉)的類型|
| 一次調用 |
| call_once(C11)| 只需調用一次函數(shù)(function)|
| 在頭文件<threads.h> 中定義 |
|:----|
| cnd_t | 條件變量標識符|
| cnd_init(C11)| 創(chuàng)建一個條件變量(函數(shù))|
| cnd_signal(C11)| 取消阻塞條件變量(函數(shù))上的一個線程|
| cnd_broadcast(C11)| 取消阻塞條件變量(函數(shù))上的所有線程|
| cnd_wait(C11)| 塊上的條件變量(函數(shù))|
| cnd_timedwait(C11)| 使用超時(函數(shù))在條件變量上阻塞|
| cnd_destroy(C11)| 破壞條件變量(函數(shù))|
| 在頭文件<threads.h> 中定義 |
|:----|
| thread_local(C11)| 線程本地類型宏(宏常量)|
| tss_t | 線程特定的存儲指針 |
| TSS_DTOR_ITERATIONS(C11)| 調用析構函數(shù)的最大次數(shù)(宏常量)|
| tss_dtor_t | 函數(shù)指針類型void(*)(void *),用于TSS析構函數(shù) |
| tss_create(C11)| 用給定的析構函數(shù)(函數(shù))創(chuàng)建線程特定的存儲指針|
| tss_get(C11)| 從線程專有存儲(函數(shù))讀取|
| tss_set(C11)| 寫入線程專有存儲(函數(shù))|
| tss_delete(C11)| 釋放給定線程指針(函數(shù))所持有的資源|
函數(shù)名稱,類型名稱和以cnd_,mtx_,thrd_或tss_開頭的枚舉常量以及小寫字母可以添加到C標準將來修訂版中的<threads.h>頭中的聲明中,并且可移植程序不應該使用這些標識符。
C11標準(ISO / IEC 9899:2011):
7.26線程<threads.h>(p:376-387)
7.31.15線程<threads.h>(p:456)
| 線程支持庫的C ++文檔 |
|:----|
? cppreference.com