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
  • Modo para compartir los eventos
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
Crea un evento. Un Event se utiliza para sincronizar varios hilos al mismo tiempo. Si la Event está abierta, se desbloquean todos los hilos que esperan a la Event.
Ejemplo
// 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
EventCreate(<Event> [, <Mode> [, <Initial status> [, <Options>]]])
<Event>: Cadena de caracteres
Nombre de la Event a crear. Este nombre será utilizado por todas las funciones de gestión de Event.
<Mode>: Constante opcional
Modo para manejar el Event:
eventAutomatic
(Valor predeterminado)
Después de su apertura, la Event se cierra automáticamente tan pronto como se desbloquea una sola thread.
eventManualLa Event es modificada por la EventChange.
<Initial status>: Constante opcional
Estado inicial de la Event:
eventClose
(Valor predeterminado)
La Event se cierra cuando se crea.
eventOpenLa Event está abierta cuando se crea.
<Options>: Constante opcional de tipo Integer
  • Modo para compartir el Event:
    shareGlobalLa Event se comparte entre todas las aplicaciones que se encuentran en la el equipo.
    AndroidWidget Android iPhone/iPadApple WatchJava Esta constante no está disponible.
    shareNoneEl Event es específico para la aplicación. Si no se llama a EventDestroy, la Event se destruye al final de la aplicación.
    AndroidWidget Android iPhone/iPadApple WatchJava Los eventos son únicos para la aplicación que los creó.. No se pueden compartir entre varias aplicaciones.
    shareUser
    (Valor predeterminado)
    El Event se comparte entre todas las aplicaciones de la sesión del usuario que ejecuta la aplicación.
    AndroidWidget Android iPhone/iPadApple WatchJava Esta constante no está disponible.
  • Modo de destruir el Event:
    DestructionWithoutModificationPor defecto, un Event se modifica automáticamente durante su destrucción. Si el Event se crea con la constante DestructionWithoutModification, no se modificará durante la llamada a EventDestroy o durante la destrucción automatic del Event al cerrar la aplicación.
    AndroidWidget Android Java Esta constante no está disponible.
La información sobre el modo de compartir y el modo de destrucción de la Event puede ser combinada.
Observaciones
WINDEVWEBDEV - Código ServidorReportes y ConsultasUniversal Windows 10 AppCódigo de Usuario (UMC)Ajax

Modo para compartir los eventos

En el modo shareUser, el Event se comparte entre todas las aplicaciones de la sesión del usuario que ejecuta la aplicación.
  • El evento es creado por la primera aplicación de la sesión del usuario que llama a la función EventCreate.
  • Las siguientes aplicaciones que llaman a la función EventCreate se conectan al semáforo existente.
  • La última aplicación que se cierra destruye el Event.
  • Un Event con el mismo nombre no puede ser usado por una sesión de otro usuario en el mismo ordenador: el sistema devuelve un error de derechos de acceso.
En el modo shareGlobal, el Event se comparte entre todas las aplicaciones que se encuentran en el equipo.
  • El evento es creado por la primera aplicación que llama a la función EventCreate.
  • Las siguientes aplicaciones que llaman a la función EventCreate se conectan al semáforo existente.
  • La última aplicación que se cierra destruye el Event.
Componente: wd290vm.dll
Versión mínima requerida
  • Versión 9
Esta página también está disponible para…
Comentarios
Haga clic en [Agregar] para publicar un comentario

Última modificación: 21/06/2023

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