?
このドキュメントでは、 php中國(guó)語(yǔ)ネットマニュアル リリース
在頭文件<threads.h>中定義 | ||
---|---|---|
int mtx_timedlock(mtx_t * restrict mutex,const struct timespec * restrict time_point); | (自C11以來(lái)) |
阻塞當(dāng)前線程,直到 mutex 指向的互斥鎖被鎖定,或者直到達(dá)到time_point 指向的基于 TIME_UTC 的時(shí)間點(diǎn)。
如果當(dāng)前線程已經(jīng)鎖定了互斥鎖并且互斥鎖不是遞歸的,則該行為是未定義的。
如果互斥量不支持超時(shí),則行為未定義。
先前對(duì)同一個(gè)互斥體上的 mtx_unlock 進(jìn)行同步 - 使用此操作(如果此操作成功),并且對(duì)任何給定互斥體的所有鎖定/解鎖操作形成單個(gè)總體順序(類似于原子的修改順序)。
mux | - | 指向要鎖定的互斥體的指針 |
---|---|---|
time_point | - | 指向等待的超時(shí)時(shí)間 |
如果成功則返回 thrd_success,如果在互斥鎖被鎖定之前達(dá)到超時(shí)時(shí)間,則返回 thrd_timedout,如果發(fā)生錯(cuò)誤則返回 thrd_error。
C11標(biāo)準(zhǔn)(ISO / IEC 9899:2011):
7.26.4.4 mtx_timedlock函數(shù)(p:381-382)
mtx_lock(C11) | 阻塞直到鎖定一個(gè)互斥量(函數(shù)) |
---|---|
mtx_trylock(C11) | 鎖定互斥或返回,如果已鎖定(功能) |
mtx_unlock(C11) | 解鎖互斥鎖(功能) |
| try_lock_until 的 C ++文檔 |