AYUDA EN LÍNEA
 WINDEVWEBDEV Y WINDEV MOBILE

Este contenido se ha traducido automáticamente.  Haga clic aquí  para ver la versión en inglés.
Ayuda / WLanguage / Funciones WLanguage / Funciones estándar / Funciones de gestión de procesos / Hilos, semáforos, señales y mutex
  • Declaración
  • Utilización de las variables ManualEvent
WINDEV
WindowsLinuxUniversal Windows 10 AppJavaReportes y ConsultasCódigo de Usuario (UMC)
WEBDEV
WindowsLinuxPHPWEBDEV - Código Navegador
WINDEV Mobile
AndroidWidget Android iPhone/iPadIOS WidgetApple WatchMac CatalystUniversal Windows 10 App
Otros
Procedimientos almacenados
El tipo ManualEvent permite manipular un evento manual. Se utiliza un Event manual para simplificar la sincronización entre varios hilos.
Una Event manual sólo puede ser modificada por EventChange.
Observación: Le recomendamos utilizar una variable de tipo AutomaticEvent o ManualEvent para crear un evento en lugar de nombrarlo mediante 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.
Ejemplo
// MAIN THREAD
//------------------
// Define the event
s is ManualEvent
// 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
...
// Unlocks the main thread
EventOpen(s)
Declaración

Declarando un manual Event( sintaxis simple) Ocultar los detalles

MyVariable is ManualEvent
En este caso, el manual Event se cierra cuando se crea.

Declarando una sintaxis avanzada de Event( manual) Ocultar los detalles

MyVariable is ManualEvent(<Initial status>)
<Initial status>: Constante de tipo Integer
Estado inicial de la Event:
eventOpenLa Event está abierta cuando se crea.
eventCloseLa Event se cierra cuando se crea.
Observaciones

Utilización de las variables ManualEvent

Las variables de tipo ManualEvent pueden utilizarse para sincronizar subprocesos entre ellos en las funciones:
  • sintaxis estándar:
    eventCloseCierra una sincronización Event entre varios hilos.
    eventOpenAbre una sincronización Event entre varios hilos.
    EventWaitBloquea el hilo actual mientras espera a que se abra el Event especificado.
  • sintaxis con prefijo:
    <ManualEvent Variable>.EsperaBloquea el hilo actual mientras espera a que se abra el Event especificado.
Durante una llamada a EventOpen (o Abrir), el Event permanece abierto:
  • se liberan todos los hilos pendientes,
  • todos los hilos que llegarán a la Event más tarde pasarán sin esperar.
Durante una llamada a EventClose (o Cerrar), el Event se cierra: todos los hilos que llegarán a la Event más tarde permanecerán bloqueados.
Versión mínima requerida
  • Versión 20
Esta página también está disponible para…
Comentarios
Haga clic en [Agregar] para publicar un comentario

Última modificación: 22/06/2023

Señalar un error o enviar una sugerencia | Ayuda local