|
|
|
|
Bloquea el hilo actual mientras espera a que se abra el Event especificado.
// Create an event EventCreate("Let's go", eventAutomatic, eventClose) // Run a first thread ThreadExecute("Thread1", threadNormal, "Thread_First") // Locks the current thread until the event is obtained ThreadWaitSignal() // Run a second thread ThreadExecute("Thread2", threadNormal, "Thread_Second") // Locks the current thread until the event is obtained ThreadWaitSignal() // Modifies the event to run the threads EventChange("Let's go", eventOpen)
PROCEDURE Thread_First() Trace(dbgInfo(dbgProcess) + " - ThreadSendSignal(threadMain)") ThreadSendSignal(threadMain) EventWait("Let's go") Trace(dbgInfo(dbgProcess) + " - Event received")
PROCEDURE Thread_Second() Trace(dbgInfo(dbgProcess) + " - ThreadSendSignal(threadMain)") ThreadSendSignal(threadMain) EventWait("Let's go") Trace(dbgInfo(dbgProcess) + " - Event received")
Sintaxis
<Result> = EventWait(<Event> [, <Maximum duration>])
<Result>: Integro - 1 si la Event fue recibida por la el hilo,
- 0 en caso contrario (duración máxima superada).
<Event>: Cadena de caracteres, o AutomaticEvent o ManualEvent Variable - Nombre de la Event a esperar. Si este evento no existe, se crea automatic ally con las opciones por defecto (modo automatic) y se cierra.
- Nombre de la variable AutomaticEvent que corresponde al Event a esperar.
- Nombre de la variable ManualEvent que corresponde al Event a esperar.
<Maximum duration>: Entero o duración opcional Tiempo máximo de espera en centésimas de segundo. - Si al final del tiempo especificado, el subproceso no ha recibido una señal, el valor de <Resultado> es False.
- El tiempo de espera es infinito si no se especifica este parámetro.
- Si este parámetro está ajustado a 0, corresponde al estado de Event, sin esperar.
Este parámetro puede ser: - un número entero que corresponde al número de centésimas de segundo,
- una variable de tipo Duration,
- la duración en un formato legible (por ejemplo, 1 s o 10 ms).
Observaciones La ejecución de un subproceso se puede detener, incluso si está bloqueado en una espera infinita de un evento. Simplemente utilice ThreadStop.
Esta página también está disponible para…
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|