C1x ミューテックス (§7.25.4) について次の質問があります。
ブロックする代わりにmtx_lock()
戻ることができるのはどのような状況ですか? thrd_busy
どのような状況でmtx_timedlock()
戻ることができthrd_busy
ますか?
thrd_busy
§7.25.1 ¶5 で、「テストおよびリターン関数によって要求されたリソースが既に使用されている場合に返される」と定義されていることに注意してください。
によってのみ返されるか、またはまたはミューテックスで呼び出された場合にthrd_busy
のみ返されると予想されますが、タイムアウトをサポートするミューテックス、つまりまたはミューテックスを必要とするからは絶対に返されません。mtx_trylock()
mtx_lock()
mtx_try
mtx_try | mtx_recursive
mtx_timedlock()
mtx_timed
mtx_timed | mtx_recursive
これはドラフトの見落としですか?または、何か不足していますか?