|
|
|
|
- Declaración
- Utilización de las variables AutomaticEvent
AutomaticEvent (Tipo de Variable)
El tipo AutomaticEvent se usa para administrar un automatic Event 400. Un automatic Event se utiliza para simplificar la sincronización entre varios hilos. Tras su apertura, se cierra un evento "automatic" automatic aliado en cuanto se desbloquea un único Thread. Observación: Se recomienda utilizar una variable de tipo AutomaticEvent o ManualEvent para crear un evento en lugar de nombrarlo utilizando una cadena de caracteres. De hecho, el uso de un Variable le permite: - manejar el alcance de Variable,
- evitar tener 2 eventos con el mismo nombre en 2 hilos diferentes.
// MAIN THREAD //------------------ // Define the event s is AutomaticEvent // Start the thread ThreadExecute("Thread", threadNormal, ProcThread, s) // Code in parallel with the thread ... // Wait for the event triggered by the thread EventWait("s")
// SECONDARY THREAD // ---------------------- PROCÉDURE ProcThread(s)
// Code in the thread ... // Unlock the main thread EventOpen(s)
En este caso, el automatic Event se cierra cuando se crea.
Declarar un automatic Event( sintaxis avanzada) Ocultar los detalles
MyVariable is AutomaticEvent(<Initial state>)
<Initial state>: Constante de tipo Integer Estado inicial de Event:
| | eventOpen | La Event está abierta cuando se crea. | eventClose | La Event se cierra cuando se crea. |
Observaciones Utilización de las variables AutomaticEvent Las variables AutomaticEvent se pueden usar para sincronizar hilos en funciones: - sintaxis estándar:
| | eventClose | Cierra una sincronización Event entre varios hilos. | eventOpen | Abre una sincronización Event entre varios hilos. | EventWait | Bloquea el hilo actual mientras espera a que se abra el Event especificado. |
- sintaxis con prefijo:
| | <Variable AutomaticEvent>.Wait | Bloquea el hilo actual mientras espera a que se abra el Event especificado. | Abrir | Abre una sincronización Event entre varios hilos. | Cerrar | Cierra una sincronización Event entre varios hilos. |
- si hay por lo menos un Thread pendiente, se libera un solo Thread.
- si no hay ningún Thread pendiente, el Event permanece abierto hasta que un Thread llama a EventWait (o .espera).
Esta página también está disponible para…
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|