|
|
|
|
<Variable AutomaticEvent>.Wait (Función) Bloquea el hilo actual mientras espera a que se abra el Event especificado. // Create an event Event_Letsgo is AutomaticEvent(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() // Opens the event to run the threads Event_Letsgo.Open()
PROCEDURE Thread_First() Trace(dbgInfo(dbgProcess) + " - ThreadSendSignal(threadMain)") ThreadSendSignal(threadMain) Event_Letsgo.Wait() Trace(dbgInfo(dbgProcess) + " - Event received") PROCEDURE Thread_Second() Trace(dbgInfo(dbgProcess) + " - ThreadSendSignal(threadMain)") ThreadSendSignal(threadMain) Event_Letsgo.Wait() Trace(dbgInfo(dbgProcess) + " - Event received") Sintaxis
<Result> = <Event>.Wait([<Maximum duration>])
<Result>: Integro - 1 si la Event fue recibida por la el hilo,
- 0 en caso contrario (duración máxima superada).
<Event>: AutomaticEvent Variable Nombre de la variable AutomaticEvent 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…
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|