다음을 통해 공유


DeferrableEventArgs 클래스

지연에 대한 이벤트 인수 형식에 사용되는 템플릿 클래스입니다.

구문

template <typename TEventArgsInterface, typename TEventArgsClass>
class DeferrableEventArgs : public TEventArgsInterface;

매개 변수

TEventArgsInterface
지연된 이벤트에 대한 인수를 선언하는 인터페이스 형식입니다.

TEventArgsClass
TEventArgsInterface를 구현하는 클래스입니다.

멤버

공용 메서드

이름 설명
DeferrableEventArgs::GetDeferral 지연된 이벤트를 나타내는 Deferral 개체에 대한 참조를 가져옵니다.
DeferrableEventArgs::InvokeAllFinished 지연된 이벤트를 처리하는 모든 처리가 완료되었음을 나타내기 위해 호출됩니다.

설명

이 클래스의 인스턴스는 지연된 이벤트에 대한 이벤트 처리기에 전달됩니다. 템플릿 매개 변수는 특정 형식의 지연된 이벤트에 대한 이벤트 인수 세부 정보를 정의하는 인터페이스 및 해당 인터페이스를 구현하는 클래스를 나타냅니다.

클래스는 지연된 이벤트에 대한 이벤트 처리기에 첫 번째 인수로 표시됩니다. GetDeferral 메서드를 호출하여 지연된 이벤트에 대한 모든 정보를 가져올 수 있는 Deferral 개체를 가져올 수 있습니다. 이벤트 처리를 완료한 후 Deferral 개체에 대해 Complete를 호출해야 합니다. 그런 다음, 이벤트 처리기 메서드의 끝에서 InvokeAllFinished을 호출하여 지연된 모든 이벤트의 완료가 제대로 전달되도록 해야 합니다.

요구 사항

헤더: event.h

네임스페이스: Microsoft::WRL

DeferrableEventArgs::GetDeferral

지연된 이벤트를 나타내는 Deferral 개체에 대한 참조를 가져옵니다.

HRESULT GetDeferral([out, retval] Windows::Foundation::IDeferral** result)

매개 변수

result
호출이 완료되면 Deferral 개체를 참조하는 포인터입니다.

Return Value

성공하면 S_OK이고, 그렇지 않으면 오류를 나타내는 HRESULT입니다.

DeferrableEventArgs::InvokeAllFinished

지연된 이벤트를 처리하는 모든 처리가 완료되었음을 나타내기 위해 호출됩니다.

void InvokeAllFinished()

설명

이벤트 원본이 InvokeAll을 호출한 후 이 메서드를 호출해야 합니다. 이 메서드를 호출하면 추가 지연이 수행되지 않고, 수행된 지연이 없을 경우 완료 처리기가 강제로 실행됩니다.