다음을 통해 공유


Dispatcher.DisableProcessing 메서드

정의

Dispatcher 큐 프로세스를 비활성화합니다.

public:
 System::Windows::Threading::DispatcherProcessingDisabled DisableProcessing();
public System.Windows.Threading.DispatcherProcessingDisabled DisableProcessing ();
member this.DisableProcessing : unit -> System.Windows.Threading.DispatcherProcessingDisabled
Public Function DisableProcessing () As DispatcherProcessingDisabled

반환

DispatcherProcessingDisabled

Dispatcher 처리를 다시 활성화하는 데 사용되는 구조체입니다.

예제

다음 예제에서는 디스패처 처리를 사용 하지 않도록 설정 하 고 다시 디스패처 처리를 사용 하도록 설정 하는 방법을 보여 줍니다. DisableProcessing 호출 되는 를 사용 하 여 문입니다. DisableProcessingDispatcherProcessingDisabled 사용 블록이 완료될 때 삭제할 개체로 사용되는 구조를 반환합니다. Dispose 구조에서 DispatcherProcessingDisabled 호출되면 디스패처 처리가 다시 사용하도록 설정됩니다.

// The Dispose() method is called at the end of the using statement.
// Calling Dispose on the DispatcherProcessingDisabled structure, 
// which is returned from the call to DisableProcessing, will
// re-enalbe Dispatcher processing.
using (Dispatcher.DisableProcessing())
{
    // Do work while the dispatcher processing is disabled.
    Thread.Sleep(2000);
}
' The Dispose() method is called at the end of the using statement.
' Calling Dispose on the DispatcherProcessingDisabled structure, 
' which is returned from the call to DisableProcessing, will
' re-enable Dispatcher processing.
Using Dispatcher.DisableProcessing()
    ' Do work while the dispatcher processing is disabled.
    Thread.Sleep(2000)
End Using

설명

디스패처 처리를 비활성화는 관련 되지 않은 재입력 가능성을 제거 하기 위한 고급 메서드입니다.

처리를 사용 하지 않도록 설정의 효과 다음과 같습니다.

  • CLR 잠금 메시지를 내부적으로 펌프 되지 됩니다.

  • DispatcherFrame 개체는 푸시할 수 없습니다.

  • 메시지 처리를 허용 되지 않습니다.

DispatcherProcessingDisabled 호출될 때 반환되는 DisableProcessing 구조체를 사용하여 디스패처 처리를 다시 사용하도록 설정할 수 있습니다. 구조를 호출 Dispose 하면 DispatcherProcessingDisabled 처리를 다시 사용할 수 있습니다.

DisableProcessing 는 연결된 스레드 Dispatcher 에서만 호출할 수 있습니다.

적용 대상