|
|
|
|
|
- Caso especial: Detener un subproceso que contiene la función SocketWaitForConnection
Advertencia
No se recomienda el uso de esta función porque detiene el subproceso actual de manera abrupta. Puede causar problemas graves (escritura incompleta de archivos, pérdida de memoria, sección crítica no eliminada, etc.). Se recomienda utilizar ThreadRequestStop y ThreadStopRequested.
Detiene un subproceso secundario. 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.).
Sintaxis
<Result> = ThreadStop(<Thread name> [, <Maximum timeout>])
<Result>: Booleano - True si se detuvo el subproceso o si el subproceso no existe,
- False si el subproceso está bloqueado
<Thread name>: Cadena de caracteres Nombre del subproceso a detener. Este nombre se asigna al ejecutar el subproceso (con la función ThreadExecute). Casos especiales: - Si este parámetro corresponde a una cadena vacía (""), el subproceso actual se detiene. Si el subproceso actual es el subproceso principal, la función ThreadStop es equivalente a la función EndProgram.
Solo se permite este comportamiento. La función ThreadStop solo puede utilizarse en el subproceso actual. - Si el nombre del subproceso no existe, la función ThreadStop no tiene ningún efecto y devuelve True.
- Si el nombre del subproceso es un subproceso hijo o un subproceso hermano, ThreadStop espera a que la función WLanguage actual (por ejemplo, HReadFirst) termine. En este caso, ThreadStop es una función de bloqueo.
- Si este parámetro corresponde a la constante threadMain, el subproceso principal se detiene.
- De lo contrario, se produce un error WLanguage.
<Maximum timeout>: Entero opcional Tiempo máximo de espera en centésimas de segundo. - Si al final de la duración especificada, no se ha detenido el subproceso <Result> se establece en False.
- Si no se especifica este parámetro o corresponde a la constante Infinite, la espera es infinita.
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 Caso especial: Detener un subproceso que contiene la función SocketWaitForConnection Para detener el subproceso correctamente con la función ThreadStop, se debe incluir la función SocketWaitForConnection en un bucle: Timeout = 30 LOOP SocketWaitForConnection("MySocket", Duration) END
Esta página también está disponible para…
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|