mtx_trylock
From cppreference.net
|
헤더 파일에 정의됨
<threads.h>
|
||
|
int
mtx_trylock
(
mtx_t
*
mutex
)
;
|
(C11 이후) | |
mutex
가 가리키는 뮤텍스를 블로킹 없이 잠그려 시도합니다. 뮤텍스가 이미 잠겨 있는 경우 즉시 반환됩니다.
동일한 뮤텍스에 대한 이전의 mtx_unlock 호출은 이 연산과 동기화됩니다 (이 연산이 성공할 경우). 또한 모든 주어진 뮤텍스에 대한 lock/unlock 연산들은 단일 전체 순서를 형성합니다 (원자 변수의 수정 순서와 유사하게)
목차 |
매개변수
| mutex | - | 잠글 뮤텍스에 대한 포인터 |
반환값
thrd_success 성공 시, thrd_busy 뮤텍스가 이미 잠겨 있거나 사용 가능한 뮤텍스를 획득하지 못하는 허위 실패(spurious failure)로 인한 경우, 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
|
|