C++ named requirements: Lockable (since C++11)
From cppreference.net
C++
C++ named requirements
|
|
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Lockable 요구 사항은 시도적 잠금을 포함하도록 BasicLockable 요구 사항을 확장합니다.
목차 |
요구사항
타입
L
이
Lockable
이 되기 위해서는 위 조건과 함께 다음 조건도 만족해야 합니다:
| Expression | Effects | Return value |
|---|---|---|
| m. try_lock ( ) | 현재 실행 에이전트(스레드, 프로세스, 태스크)에 대한 락을 블로킹 없이 획득하려 시도합니다. 예외가 발생하면 락을 얻지 못합니다. | true 락을 획득한 경우, false 그렇지 않은 경우 |
참고 사항
try_lock
멤버 함수는 성공 시
m
에 대한 비공유 잠금을 획득합니다.
표준 라이브러리
다음 표준 라이브러리 타입들은 Lockable 요구사항을 충족합니다:
|
(C++11)
|
기본 상호 배제 기능 제공
(class) |
|
(C++11)
|
동일 스레드에서 재귀적으로 잠글 수 있는 상호 배제 기능 제공
(class) |
|
(C++11)
|
동일 스레드에서 재귀적으로 잠글 수 있고
타임아웃으로 잠금을 구현하는 상호 배제 기능 제공 (class) |
|
(C++17)
|
공유 상호 배제 기능 제공
(class) |
|
(C++14)
|
공유 상호 배제 기능 제공 및 타임아웃으로 잠금 구현
(class) |
|
(C++11)
|
타임아웃으로 잠금을 구현하는 상호 배제 기능 제공
(class) |