|
|
|
|
|
|
|
|
|
|
- Propiedades del lenguaje WLanguage que se pueden utilizar con el tipo cola
- Funciones de WLanguage para la gestión de colas
- Las colas y el multihilo
- Navegar por las colas
- Casos especiales
Una variable de tipo Queue es un tipo estructurado que agrupa un conjunto de elementos del mismo tipo. Los elementos se añaden al final de la cola y se recuperan en orden de cola. Por ejemplo, si los elementos se añaden en el siguiente orden 1, 2, 3, se recuperarán en el mismo orden 1, 2, 3.
MaFile is Queue of int
Enqueue(MaFile, 1)
Enqueue(MaFile, 2)
Enqueue(MaFile, 3)
x is int
WHILE Dequeue(MaFile, x)
Trace(x)
END
Sintaxis
Declaración e inicialización de una cola Ocultar los detalles
<Queue Name> is Queue of <Type of Queue Elements>
<Queue Name>: Nombre de la variable de cola a declarar. <Type of Queue Elements>: Tipo de elementos encontrados en la cola. Pueden utilizarse todos los tipos de variables, incluidos los arrays, los arrays asociativos, las colas, las pilas y las listas. Por ejemplo: <variable> is queue of arrays of int
<variable> is queue of fixed arrays of 5 int
<variable> is queue of associative arrays of int
<variable> is queue of queues of int
<variable> is queue of stacks of int
<variable> is queue of lists of int Observaciones Propiedades del lenguaje WLanguage que se pueden utilizar con el tipo cola Las siguientes propiedades pueden utilizarse para definir las características de las variables de cola: | | | Nombre de la propiedad | Efecto |
|---|
| AdditionCompleted | Devuelve y modifica el modo de adición de elementos. Esta propiedad se utiliza para la gestión multihilo. | | Instancia | Devuelve el número de apariciones en cola. | | NbPendingThread | Devuelve el número de subprocesos pendientes. Esta propiedad se utiliza para la gestión multihilo. | | Vacía | - True si la cola está vacía,
- False en caso contrario.
|
Funciones de WLanguage para la gestión de colas Las siguientes funciones pueden utilizarse para manejar variables de cola: | | | DeleteAll | Elimina todos los elementos: - a partir de un array WLanguage unidimensional o bidimensional.
- de un array asociativo.
- de una propiedad array de un tipo avanzado (array de eventos de gglCalendar, etc.).
- de una cola WLanguage.
- de un apilamiento WLanguage.
- de una lista WLanguage.
| | Dequeue | Elimina un elemento de la cola. | | Deserialize | Deserializa un búfer o una cadena de caracteres que contiene los datos de una clase, estructura, array (incluyendo un array asociativo), cola, pila, lista o variable avanzada, así como sus subelementos. | | Enqueue | Añade un elemento a la cola. | | QueueInfo | Recupera las características de una cola: tipos de elementos y número de elementos. | | Serializar | Transforma los siguientes elementos en un formato específico:- una estructura (y sus subelementos),
- una clase (y sus subelementos),
- un array (incluidos los arrays asociativos),
- una cola,
- un apilamiento,
- una lista.
|
Las colas y el multihilo La gestión del multihilo se tiene en cuenta al añadir y eliminar un elemento ( Enqueue y Dequeue). También tiene la posibilidad de utilizar propiedades durante una gestión multihilo, pero el resultado no es permanente. Por ejemplo: IF MaFile.Occurrence > 0 THEN
END
Navegar por las colas La sintaxis FOR EACH puede utilizarse para navegar por las colas. Los elementos se exploran en un orden de Enqueue similar al orden de Dequeue. La sintaxis utilizada corresponde a la utilizada para los arrays: FOR EACH [ELEMENT] <Variable> [, <Counter> [, <Counter>]] OF <Queue> ... END Los elementos pueden modificarse durante la navegación. Si la cola se modifica durante una navegación, los elementos navegados serán los que se encontraban cuando se inicializó la navegación: - los elementos en cola después de la inicialización del browse no serán navegados.
- los elementos desencolados tras la inicialización del browse seguirán siendo navegados.
Casos especiales - En el depurador, el contenido de la cola se muestra en orden de desencolado.
- Se puede utilizar una cola para escribir un parámetro de procedimiento.
- Una cola puede copiarse con el operador =. También tiene la posibilidad de copiar una instancia de clase o estructura que contenga una cola.
- Una cola puede ser inicializada por una lista de elementos en orden de cola.
Esta página también está disponible para…
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|