mtx_trylock
From cppreference.net
|
ヘッダーで定義
<threads.h>
|
||
|
int
mtx_trylock
(
mtx_t
*
mutex
)
;
|
(C11以降) | |
mutex
が指すミューテックスのロックを、ブロックせずに試みます。ミューテックスが既にロックされている場合は直ちに返ります。
同じミューテックスに対する事前の mtx_unlock 呼び出しは(この操作が成功した場合)、この操作と 同期する 。また、任意のミューテックスに対するすべてのロック/アンロック操作は単一の全順序を形成する(アトミックオブジェクトの変更順序と類似)
目次 |
パラメータ
| mutex | - | ロックするミューテックスへのポインタ |
戻り値
thrd_success 成功した場合、 thrd_busy ミューテックスが既にロックされている場合、または利用可能なミューテックスの取得に偽の失敗が発生した場合、 thrd_error エラーが発生した場合。
不具合報告
以下の動作変更に関する欠陥報告書は、以前に公開されたC規格に対して遡及的に適用されました。
| DR | 適用対象 | 公開時の動作 | 正しい動作 |
|---|---|---|---|
| DR 470 | C11 |
mtx_trylock
はスプリアス失敗を許可されていなかった
|
許可 |
参考文献
- C17規格 (ISO/IEC 9899:2018):
-
- 7.26.4.5 mtx_trylock関数 (p: 278-279)
- C11規格 (ISO/IEC 9899:2011):
-
- 7.26.4.5 mtx_trylock関数 (p: 382)
関連項目
|
(C11)
|
ミューテックスをロックするまでブロックする
(関数) |
|
(C11)
|
ミューテックスをロックするかタイムアウトするまでブロックする
(関数) |
|
(C11)
|
ミューテックスをアンロックする
(関数) |
|
C++ documentation
for
mutex::try_lock
|
|
|
C++ documentation
for
timed_mutex::try_lock
|
|
|
C++ documentation
for
recursive_mutex::try_lock
|
|
|
C++ documentation
for
recursive_timed_mutex::try_lock
|
|