IF_Async - Información general
Tipo: |
Interfaz |
Disponible desde: |
V1.0.0.0 |
Versiones: |
Versión actual |
La interfaz IF_Async se utiliza para transmitir la función que debe delegarse a la tarea adicional e informar de su ejecución.
Esta interfaz debe implementarse en el bloque de funciones personalizado del usuario. El método Job y los descriptores de acceso Get y Set de la propiedad xDone se crean de manera implícita para este bloque de funciones.
Las partes de implementación del método Job y los descriptores de acceso Get y Set de la propiedad xDone debe completarlos el usuario de manera interna.
Nombre |
Descripción |
---|---|
Método que se ejecutará en una tarea asíncrona. |
Nombre |
Tipo de datos |
Acceso |
Descripción |
---|---|---|---|
xDone |
BOOL |
Lectura |
Indica si IF_Async.Job() se ha ejecutado correctamente. |
Método de descriptor de acceso Set
El método de descriptor de acceso Set de la propiedad xDone lo invoca AsyncManager y se utiliza para informar de la ejecución del método Job.
Se establecerá en FALSE si el bloque de funciones se transmite invocando el método Start.
Se establecerá en TRUE tras ejecutar una vez el método Job en la tarea adicional.
La parte de implementación del método de descriptor de acceso debe completarla el usuario. Debe implementar al menos una asignación a una variable local para que el valor establecido desde la última llamada quede almacenado para su procesamiento posterior.
Ejemplo de implementación:
THIS^.xDoneLocal := xDone;
La variable xDoneLocal se define en la parte de declaración del bloque de funciones del usuario y se establece en TRUE cuando se ejecuta el método Job.
Método de descriptor de acceso Get
El método de descriptor de acceso Get de la propiedad xDone está reservado para su uso en la aplicación del usuario. No hay llamada alguna de este método en AsyncManager.
La parte de implementación del método de descriptor de acceso debe completarla el usuario. Para garantizar la coherencia en la aplicación del usuario, este método de descriptor de acceso debe devolver el valor que estableció previamente AsyncManager.
Ejemplo de implementación:
xDone := THIS^.xDoneLocal;
Este ejemplo es compatible con el ejemplo presentado para el método de descriptor de acceso Set. La variable xDoneLocal se define en la parte de declaración del bloque de funciones del usuario y se establece en TRUE cuando se ejecuta el método Job.