Freigeben über


AgileEventSource-Klasse

Stellt ein Ereignis dar, das von einer agilen Komponente ausgelöst wird, bei der es sich um eine Komponente handelt, auf die über einen beliebigen Thread zugegriffen werden kann. Erbt von EventSource und überschreibt die Add Memberfunktion mit einem zusätzlichen Typparameter zum Angeben von Optionen zum Aufrufen des agilen Ereignisses.

Syntax

template<
    typename TDelegateInterface,
    typename TEventSourceOptions = Microsoft::WRL::InvokeModeOptions<FireAll>
>
class AgileEventSource :
    public Microsoft::WRL::EventSource<
        TDelegateInterface, TEventSourceOptions>;

Parameter

TDelegateInterface
Die Schnittstelle zu einem Delegaten, der einen Ereignishandler darstellt.

TEventSourceOptions
Eine InvokeModeOptions-Struktur , deren invokeMode-Feld auf InvokeMode::StopOnFirstError oder InvokeMode::FireAll.

Hinweise

Die überwiegende Mehrheit der Komponenten in der Windows-Runtime sind agile Komponenten. Weitere Informationen finden Sie unter Threading und Marshaling (C++/CX).For more information, see Threading and Marshaling (C++/CX).

Vererbungshierarchie

EventSource

AgileEventSource

Anforderungen

Header: event.h

Namespace: Microsoft::WRL

Member

Öffentliche Methoden

Name Beschreibung
AgileEventSource::Add-Methode Fügt den agilen Ereignishandler an, der durch die angegebene Delegatenschnittstelle dargestellt wird, an den Satz von Ereignishandlern für das aktuelle AgileEventSource -Objekt an.

AgileEventSource::Add-Methode

Fügt den Ereignishandler an, der durch die angegebene Delegatenschnittstelle dargestellt wird, an den Satz von Ereignishandlern für das aktuelle EventSource -Objekt an.

Syntax

HRESULT Add(
   _In_ TDelegateInterface* delegateInterface,
   _Out_ EventRegistrationToken* token
);

Parameter

delegateInterface
Die Schnittstelle zu einem Delegatenobjekt, das einen Ereignishandler darstellt.

token
Wenn dieser Vorgang abgeschlossen ist, wird ein Handle ausgeführt, das das Ereignis darstellt. Verwenden Sie dieses Token als Parameter für die Remove() Methode, um den Ereignishandler zu verwerfen.

Rückgabewert

S_OK, wenn erfolgreich; andernfalls ein HRESULT, das den Fehler angibt.

Siehe auch

Microsoft::WRL-Namespace