다음을 통해 공유


DispatcherQueue.ShutdownStarting 이벤트

정의

ShutdownQueue 또는 ShutdownQueueAsync가 호출될 때 발생합니다. 발생한 이벤트의 전체 목록 및 순서는 ShutdownQueueAsync에 대한 비고를 참조하세요.

// Register
event_token ShutdownStarting(TypedEventHandler<DispatcherQueue, DispatcherQueueShutdownStartingEventArgs const&> const& handler) const;

// Revoke with event_token
void ShutdownStarting(event_token const* cookie) const;

// Revoke with event_revoker
DispatcherQueue::ShutdownStarting_revoker ShutdownStarting(auto_revoke_t, TypedEventHandler<DispatcherQueue, DispatcherQueueShutdownStartingEventArgs const&> const& handler) const;
public event TypedEventHandler<DispatcherQueue,DispatcherQueueShutdownStartingEventArgs> ShutdownStarting;
function onShutdownStarting(eventArgs) { /* Your code */ }
dispatcherQueue.addEventListener("shutdownstarting", onShutdownStarting);
dispatcherQueue.removeEventListener("shutdownstarting", onShutdownStarting);
- or -
dispatcherQueue.onshutdownstarting = onShutdownStarting;
Public Custom Event ShutdownStarting As TypedEventHandler(Of DispatcherQueue, DispatcherQueueShutdownStartingEventArgs) 

이벤트 유형

예제

_dispatcherQueue.ShutdownStarting += (s, e) =>
{
    // Queue is shutting down, do this last operation to  
    // update state before the dispatcher loop exits
    _queue.TryEnqueue(
        () =>
        {
            // clean up state
        });
};

설명

이벤트 루프가 종료되기 전에 이벤트 루프 스레드에서 ShutdownStarting 이벤트가 발생합니다. 이 이벤트의 처리기는 지연을 수행할 수 있으며 지연이 완료될 때까지 작업을 계속 게시할 수 있습니다. 지연이 완료되면 DispatcherQueue 는 더 이상 작업을 수락하지 않으며 DispatcherQueue.TryEnqueue는 를 반환합니다 false.

적용 대상