Delen via


gebeurtenisklasse

Een handmatige reset-gebeurtenis die expliciet op de hoogte is van de Gelijktijdigheidsruntime.

Syntaxis

class event;

Members

Openbare constructors

Naam Description
~gebeurtenisdestructor Vernietigt een gebeurtenis.

Openbare methoden

Naam Description
reset Hiermee stelt u de gebeurtenis opnieuw in op een niet-gesignaleerde status.
set Geeft de gebeurtenis aan.
wachten Wacht totdat de gebeurtenis wordt gesignaleerd.
wait_for_multiple Wacht tot er meerdere gebeurtenissen worden gesignaleerd.

Openbare constanten

Naam Description
timeout_infinite Waarde die aangeeft dat er nooit een time-out optreedt voor een wachttijd.

Opmerkingen

Zie Synchronisatiegegevensstructuren voor meer informatie.

Overnamehiƫrarchie

event

Requirements

Koptekst: concrt.h

Naamruimte: gelijktijdigheid

gebeurtenis

Maakt een nieuwe gebeurtenis.

_CRTIMP event();

~gebeurtenis

Vernietigt een gebeurtenis.

~event();

Opmerkingen

Er wordt verwacht dat er geen threads op de gebeurtenis wachten wanneer de destructor wordt uitgevoerd. Het toestaan van de gebeurtenis om threads te destructeren die nog steeds wachten, resulteert in niet-gedefinieerd gedrag.

reset

Hiermee stelt u de gebeurtenis opnieuw in op een niet-gesignaleerde status.

void reset();

set

Geeft de gebeurtenis aan.

void set();

Opmerkingen

Het signaleren van de gebeurtenis kan ertoe leiden dat een willekeurig aantal contexten die wachten op de gebeurtenis, kan worden uitgevoerd.

timeout_infinite

Waarde die aangeeft dat er nooit een time-out optreedt voor een wachttijd.

static const unsigned int timeout_infinite = COOPERATIVE_TIMEOUT_INFINITE;

wait

Wacht totdat de gebeurtenis wordt gesignaleerd.

size_t wait(unsigned int _Timeout = COOPERATIVE_TIMEOUT_INFINITE);

Parameterwaarden

_Timeout
Geeft het aantal milliseconden aan voordat er een time-out optreedt voor de wachttijd. De waarde COOPERATIVE_TIMEOUT_INFINITE geeft aan dat er geen time-out is.

Retourwaarde

Als aan de wachttijd is voldaan, wordt de waarde 0 geretourneerd. Anders wordt de waarde COOPERATIVE_WAIT_TIMEOUT aangegeven dat er een time-out optreedt voor de wachttijd zonder dat de gebeurtenis wordt gesignaleerd.

Belangrijk

Roep in een UWP-app (Universal Windows Platform) de ASTA-thread niet wait aan omdat deze aanroep de huidige thread kan blokkeren en ervoor kan zorgen dat de app niet meer reageert.

wait_for_multiple

Wacht tot er meerdere gebeurtenissen worden gesignaleerd.

static size_t __cdecl wait_for_multiple(
    _In_reads_(count) event** _PPEvents,
    size_t count,
    bool _FWaitAll,
    unsigned int _Timeout = COOPERATIVE_TIMEOUT_INFINITE);

Parameterwaarden

_PPEvents
Een matrix met gebeurtenissen waarop moet worden gewacht. Het aantal gebeurtenissen in de matrix wordt aangegeven door de count parameter.

aantal
Het aantal gebeurtenissen in de matrix die is opgegeven in de _PPEvents parameter.

_FWaitAll
Als deze is ingesteld op de waarde true, geeft de parameter aan dat alle gebeurtenissen in de matrix die in de _PPEvents parameter zijn opgegeven, moeten worden gesignaleerd om aan de wachttijd te voldoen. Als deze is ingesteld op de waarde false, geeft deze aan dat elke gebeurtenis binnen de matrix die is opgegeven in de _PPEvents parameter die wordt gesignaleerd, voldoet aan de wachttijd.

_Timeout
Geeft het aantal milliseconden aan voordat er een time-out optreedt voor de wachttijd. De waarde COOPERATIVE_TIMEOUT_INFINITE geeft aan dat er geen time-out is.

Retourwaarde

Als aan de wachttijd is voldaan, is de index binnen de matrix die is opgegeven in de _PPEvents parameter die aan de wachtvoorwaarde voldeed, anders de waarde COOPERATIVE_WAIT_TIMEOUT om aan te geven dat er een time-out optreedt zonder dat aan de voorwaarde wordt voldaan.

Opmerkingen

Als de parameter _FWaitAll is ingesteld op de waarde true om aan te geven dat alle gebeurtenissen moeten worden gesignaleerd om aan de wachttijd te voldoen, heeft de index die door de functie wordt geretourneerd, geen speciale betekenis dan het feit dat het niet de waarde COOPERATIVE_WAIT_TIMEOUTis.

Belangrijk

Roep in een UWP-app (Universal Windows Platform) de ASTA-thread niet wait_for_multiple aan omdat deze aanroep de huidige thread kan blokkeren en ervoor kan zorgen dat de app niet meer reageert.

Zie ook

Naamruimte gelijktijdigheid