|
|
|
|
ThreadSendSignal (Función) La thread actual envía una Event a la thread especificada para desbloquearla. Esta función simplifica la sincronización entre subprocesos sin tener que implementar una gestión avanzada de eventos. Recordatorio: - Un subproceso es un proceso que se ejecuta en paralelo con la aplicación actual (subproceso principal). Esto le permite iniciar una tarea en segundo plano (hacer una copia de seguridad, etc.).
- Las funciones ThreadWaitSignal y ThreadSendSignal permiten sincronizar los subprocesos de dos en dos.
// Create an event EventCreate("Let's go", eventManual, 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
Enviando una señal a una Thread identificada por su nombre Ocultar los detalles
ThreadSendSignal(<Thread name>)
<Thread name>: Cadena de caracteres Nombre de la el hilo a la que debe enviarse la Event. Para notificar al subproceso principal, utilice la cadena de caracteres "." o la constante threadMain. No se puede enviar ningún Event al actual thread. Este nombre se asigna al ejecutar el subproceso (con la función ThreadExecute). Observaciones Sincronizar subprocesos Las funciones ThreadWaitSignal y ThreadSendSignal permiten sincronizar los subprocesos de dos en dos. Para sincronizar varios subprocesos en el mismo evento, se deben utilizar las funciones de gestión de eventos: Observación: En los mecanismos internos de gestión de colas y pilas, no es necesario sincronizar los subprocesos (funciones Enqueue y Dequeue para las colas, funciones Empuje y Pop para las pilas). Clasificación Lógica de negocio / UI: Código neutro
Esta página también está disponible para…
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|