Queue (Clase)
This page is specific to:.NET Framework Version:2.03.5
Biblioteca de clases de .NET Framework
Queue (Clase)

Representa una colección de objetos de tipo "primero en entrar, primero en salir".

Espacio de nombres: System.Collections
Ensamblado: mscorlib (en mscorlib.dll)

Sintaxis

<SerializableAttribute> _
<ComVisibleAttribute(True)> _
Public Class Queue
    Implements ICollection, IEnumerable, ICloneable
Dim instance As Queue
El código de ejemplo para este idioma aún no está disponible.
/** @attribute SerializableAttribute() */ 
/** @attribute ComVisibleAttribute(true) */ 
public class Queue implements ICollection, IEnumerable, 
    ICloneable
Comentarios

Las colas son útiles para almacenar mensajes en el orden en el que fueron recibidos para el procesamiento secuencial. Esta clase implementa una cola como una matriz circular. Los objetos almacenados en Queue se insertan en un extremo y se quitan del otro.

La capacidad de Queue es el número de elementos que Queue puede contener. La capacidad inicial predeterminada de Queue es 32. A medida que se agregan elementos a una colección Queue, la capacidad aumenta automáticamente según lo requiera la reasignación. La capacidad se puede disminuir si se llama al método TrimToSize.

El factor de crecimiento es el número por el cual se multiplica la capacidad actual cuando se requiere una capacidad mayor. El factor de crecimiento se determina al construir la clase Queue. El factor de crecimiento predeterminado es 2,0.

La clase Queue acepta referencia de objeto null (Nothing en Visual Basic) como valor válido y admite elementos duplicados.

Para obtener la versión genérica de esta colección, vea System.Collections.Generic.Queue.

Ejemplo

En el ejemplo siguiente se muestra cómo crear y agregar valores a Queue y cómo imprimirlos.

Imports System
Imports System.Collections

Public Class SamplesQueue

    Public Shared Sub Main()

        ' Creates and initializes a new Queue.
        Dim myQ As New Queue()
        myQ.Enqueue("Hello")
        myQ.Enqueue("World")
        myQ.Enqueue("!")

        ' Displays the properties and values of the Queue.
        Console.WriteLine("myQ")
        Console.WriteLine("    Count:    {0}", myQ.Count)
        Console.Write("    Values:")
        PrintValues(myQ)

    End Sub 'Main

    Public Shared Sub PrintValues(myCollection As IEnumerable)
        Dim obj As [Object]
        For Each obj In  myCollection
            Console.Write("    {0}", obj)
        Next obj
        Console.WriteLine()
    End Sub 'PrintValues

End Class 'SamplesQueue


' This code produces the following output.
' 
' myQ
'     Count:    3
'     Values:    Hello    World    !


import System.*;
import System.Collections.*;

public class SamplesQueue
{
    public static void main(String[] args)
    {
        // Creates and initializes a new Queue.
        Queue myQ = new Queue();
        myQ.Enqueue("Hello");
        myQ.Enqueue("World");
        myQ.Enqueue("!");

        // Displays the properties and values of the Queue.
        Console.WriteLine("myQ");
        Console.WriteLine(
            "\tCount:    {0}",System.Convert.ToString(myQ.get_Count()));
        Console.Write("\tValues:");
        PrintValues(myQ);
    } //main

    public static void PrintValues(IEnumerable myCollection)
    {
        IEnumerator enumerator = myCollection.GetEnumerator();
        while(enumerator.MoveNext()) {
            Object obj = enumerator.get_Current();
            Console.Write("    {0}", obj);
        }
        Console.WriteLine();
    } //PrintValues
} //SamplesQueue

/* 
 This code produces the following output.
 
 myQ
     Count:    3
     Values:    Hello    World    !
 */

Jerarquía de herencia

System.Object
  System.Collections.Queue
Seguridad para subprocesos

Los miembros estáticos públicos (Shared en Visual Basic) de este tipo son seguros para subprocesos. No se garantiza que los miembros de instancias sean seguros para la ejecución de subprocesos.

Para garantizar la seguridad en la ejecución de los subprocesos de Queue, todas las operaciones se deben realizar mediante el contenedor devuelto por el método Synchronized.

La enumeración a través de una colección es un procedimiento sin seguridad intrínseca para la ejecución de subprocesos. Aunque una colección esté sincronizada, otros subprocesos pueden seguir modificándola, por lo que el enumerador produce una excepción. Con el fin de garantizar la seguridad para la ejecución de subprocesos durante la enumeración, es posible bloquear la colección durante toda la enumeración o detectar las excepciones debidas a cambios efectuados por otros subprocesos.

Plataformas

Windows 98, Windows 2000 SP4, Windows CE, Windows Millennium, Windows Mobile para Pocket PC, Windows Mobile para Smartphone, Windows Server 2003, Windows XP Media Center, Windows XP Professional x64, Windows XP SP2, Windows XP Starter Edition

.NET Framework no admite todas las versiones de cada plataforma. Para obtener una lista de las versiones admitidas, vea Requisitos del sistema.

Información de versión

.NET Framework

Compatible con: 2.0, 1.1, 1.0

.NET Compact Framework

Compatible con: 2.0, 1.0
Vea también

© 2009 Microsoft Corporation. Reservados todos los derechos.   Términos de uso | Marcas Registradas | Privacidad
Page view tracker
Evalúe la versión ligera de la biblioteca
x
La versión ligera está basada en ScriptFree (ancho de banda bajo) y se han añadido características que nos han solicitado, como un cuadro de búsqueda y la selección del lenguaje de código predeterminado.
¿Le gusta el cuadro de búsqueda?
¿Le gustan los bloques de código por fichas?
¿En qué medida considera útil este tema?
Díganos algo más.
Gracias
x
Nos está ayudando a mejorar MSDN Online.
Comentarios
Cambiar vista
Clásica
Ligera
ScriptFree
Cambiar vista