thread_timed_mutex

thread_timed_mutex (시간 제한 뮤텍스)

timed_mutex는 여러 스레드가 공유 데이터에 동시에 접근하는 것을 막기 위해 사용하는 동기화 기본 요소예요. mutex와 유사하게 독점적이고 비재귀적인 소유권 의미를 제공하며, 추가로 제한 시간을 두고 잠금을 시도할 수 있는 기능이 있어요. 이 페이지에서는 timed_mutex의 정의와 멤버 함수들을 자세히 설명할게요.

출처: cppreference

본문

정의

<mutex> 헤더에 정의되어 있으며, C++11부터 사용할 수 있어요.

class timed_mutex ;

timed_mutex 클래스는 여러 스레드가 공유 데이터에 동시에 접근하지 못하도록 보호하는 동기화 기본 요소예요.

mutex와 비슷하게 timed_mutex는 독점적이고 비재귀적인 소유권 의미를 제공해요. 또한 timed_mutex는 멤버 함수 try_lock_for()try_lock_until()을 통해 제한 시간을 두고 소유권을 획득하려 시도할 수 있는 기능을 제공해요.

timed_mutex 클래스는 TimedMutexStandardLayoutType의 모든 요구 사항을 충족해요.

멤버 유형

멤버 유형 정의
native_handle_type (선택적*) 구현 정의 [edit]

멤버 함수

(생성자) 뮤텍스를 생성해요 (공개 멤버 함수) [edit]
(소멸자) 뮤텍스를 파괴해요 (공개 멤버 함수) [edit]
operator= [삭제됨] 복사 대입할 수 없어요 (공개 멤버 함수) [edit]
잠금
lock 뮤텍스를 잠가요. 뮤텍스를 사용할 수 없으면 차단돼요 (공개 멤버 함수) [edit]
try_lock 뮤텍스 잠금을 시도해요. 뮤텍스를 사용할 수 없으면 바로 반환해요 (공개 멤버 함수) [edit]
try_lock_for 뮤텍스 잠금을 시도해요. 지정된 제한 시간 동안 뮤텍스를 사용할 수 없으면 반환해요 (공개 멤버 함수) [edit]
try_lock_until 뮤텍스 잠금을 시도해요. 지정된 시점이 될 때까지 뮤텍스를 사용할 수 없으면 반환해요 (공개 멤버 함수) [edit]
unlock 뮤텍스의 잠금을 해제해요 (공개 멤버 함수) [edit]
네이티브 핸들
native_handle 기본 구현 정의 네이티브 핸들 객체를 반환해요 (공개 멤버 함수) [edit]

더 알아보기 (Learn more)

cppreference