Monitor.PulseAll(Object) 메서드
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
대기 중인 모든 스레드에 개체 상태 변경을 알립니다.
public:
static void PulseAll(System::Object ^ obj);
public static void PulseAll (object obj);
static member PulseAll : obj -> unit
Public Shared Sub PulseAll (obj As Object)
매개 변수
- obj
- Object
펄스를 보내는 개체입니다.
예외
obj
매개 변수가 null
인 경우
호출한 스레드가 지정된 개체 잠금을 소유하지 않는 경우
설명
현재 지정된 개체의 잠금을 소유하고 있는 스레드는 이 메서드를 호출하여 개체의 잠금을 획득하기 위해 대기 중인 모든 스레드에 신호를 표시합니다. 신호가 전송되면 대기 중인 스레드가 준비 큐로 이동됩니다. 호출된 PulseAll
스레드가 잠금을 해제하면 준비 큐의 다음 스레드가 잠금을 획득합니다.
동기화된 개체에는 현재 잠금이 있는 스레드에 대한 참조, 잠금을 가져올 준비가 된 스레드가 포함된 준비 큐에 대한 참조, 개체 상태 변경 알림을 기다리는 스레드가 포함된 대기 중인 큐에 대한 참조 등 여러 참조가 있습니다.
Pulse동기화된 코드 블록 내에서 메서드 PulseAll
Wait 를 호출해야 합니다.
메서드에 Pulse 대한 설명은 대기 중인 스레드가 없을 때 호출되는 경우 Pulse 발생하는 작업에 대해 설명합니다.
단일 스레드에 신호를 표시하려면 이 메서드를 Pulse
사용합니다.