Compartir a través de


event Clase

Un evento de reinicio manual que es explícitamente consciente del runtime de simultaneidad.

Sintaxis

class event;

Miembros

Constructores públicos

Nombre Descripción
~event Destructor Destruye un evento.

Métodos públicos

Nombre Descripción
reset Restablece el evento a un estado no señalado.
set Señaliza el evento.
wait Espera a que se señale el evento.
wait_for_multiple Espera a que se señalen varios eventos.

Constantes públicas

Nombre Descripción
timeout_infinite Valor que indica que una espera nunca se agote.

Comentarios

Para más información, consulte Estructuras de datos de sincronización.

Jerarquía de herencia

event

Requisitos

Encabezado: concrt.h

Espacio de nombres: simultaneidad

evento

Construye un nuevo evento.

_CRTIMP event();

~evento

Destruye un evento.

~event();

Comentarios

Se espera que cuando el destructor se ejecute, no haya ningún subproceso esperando en el evento. Permitir que el evento se destruya mientras los subprocesos aún están esperando en él da como resultado un comportamiento no definido.

reiniciar

Restablece el evento a un estado no señalizado.

void reset();

set

Indica el evento.

void set();

Comentarios

Señalar el evento puede producir un número arbitrario de contextos que esperan en el evento para que se convierta en ejecutable.

tiempo_de_espera_infinito

Valor que indica que una espera nunca debe agotarse.

static const unsigned int timeout_infinite = COOPERATIVE_TIMEOUT_INFINITE;

esperar

Espera a que se señale el evento.

size_t wait(unsigned int _Timeout = COOPERATIVE_TIMEOUT_INFINITE);

Parámetros

_Timeout
Indica el número de milisegundos antes de que se agote el tiempo de espera. El valor COOPERATIVE_TIMEOUT_INFINITE significa que no hay tiempo de espera.

Valor devuelto

Si se satisfizo la espera, se devuelve el valor 0; de lo contrario, se devuelve el valor COOPERATIVE_WAIT_TIMEOUT para indicar que el tiempo de la espera se agota sin haber señalado el evento.

Importante

En una aplicación de la Plataforma universal de Windows, no llame a wait en el subproceso ASTA puesto que esta llamada puede bloquear el subproceso actual y puede producir que la aplicación deje de responder.

esperar_para_múltiples

Espera a que se señalen varios eventos.

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

Parámetros

_PPEvents
Un array de eventos para esperar en. El número de eventos dentro de la matriz viene indicado por el parámetro count.

count
El número de eventos dentro de la matriz proporcionado por el parámetro _PPEvents.

_FWaitAll
Si está establecido en el valor true, el parámetro especifica que todos los eventos de la matriz proporcionada en el parámetro _PPEvents deben señalarse para satisfacer la espera. Si se establece en el valor false, especifica que cualquier evento dentro de la matriz suministrada en el parámetro _PPEvents que sea señalado satisfará la espera.

_Timeout
Indica el número de milisegundos antes de que se agote el tiempo de espera. El valor COOPERATIVE_TIMEOUT_INFINITE significa que no hay tiempo de espera.

Valor devuelto

Si se satisfizo la espera, el índice dentro de la matriz proporcionada en el parámetro _PPEvents que satisfizo la condición de espera; de lo contrario, el valor COOPERATIVE_WAIT_TIMEOUT para indicar que se agotó el tiempo de espera sin que se satisfaciera la condición.

Comentarios

Si el parámetro _FWaitAll está establecido en el valor true para indicar que todos los eventos se deben señalar para satisfacer la espera, el índice que devuelve la función no tiene ninguna importancia especial aparte del hecho de que no es el valor COOPERATIVE_WAIT_TIMEOUT.

Importante

En una aplicación de la Plataforma universal de Windows, no llame a wait_for_multiple en el subproceso ASTA puesto que esta llamada puede bloquear el subproceso actual y puede producir que la aplicación deje de responder.

Consulte también

espacio de nombres de concurrencia