MessageQueueEnumerator Clase

Definición

Ofrece un cursor de solo avance para enumerar los mensajes de una cola de mensajes.Provides a forward-only cursor to enumerate through messages in a message queue.

public ref class MessageQueueEnumerator : MarshalByRefObject, IDisposable, System::Collections::IEnumerator
public class MessageQueueEnumerator : MarshalByRefObject, IDisposable, System.Collections.IEnumerator
type MessageQueueEnumerator = class
    inherit MarshalByRefObject
    interface IEnumerator
    interface IDisposable
Public Class MessageQueueEnumerator
Inherits MarshalByRefObject
Implements IDisposable, IEnumerator
Herencia
MessageQueueEnumerator
Implementaciones

Ejemplos

En el siguiente ejemplo de código se recorre en iteración todas las colas de mensajes de la red y se examina la ruta de acceso de cada cola.The following code example iterates through all the message queues in the network, and examines the path for each queue. Por último, muestra el número de colas públicas de la red.Finally, it displays the number of public queues on the network.

#using <System.dll>
#using <System.Messaging.dll>

using namespace System;
using namespace System::Messaging;

//**************************************************
// Iterates through message queues and examines the
// path for each queue. Also displays the number of
// public queues on the network.
//**************************************************
void ListPublicQueues()
{
   
   // Holds the count of private queues.
   int numberQueues = 0;
   
   // Get a cursor into the queues on the network.
   MessageQueueEnumerator^ myQueueEnumerator = MessageQueue::GetMessageQueueEnumerator();
   
   // Move to the next queue and read its path.
   while ( myQueueEnumerator->MoveNext() )
   {
      
      // Increase the count if priority is Lowest.
      Console::WriteLine( myQueueEnumerator->Current->Path );
      numberQueues++;
   }

   
   // Display final count.
   Console::WriteLine( "Number of public queues: {0}", numberQueues );
   return;
}


//**************************************************
// Provides an entry point into the application.
//   
// This example uses a cursor to step through the
// message queues and list the public queues on the
// network.
//**************************************************
int main()
{
   
   // Output the count of Lowest priority messages.
   ListPublicQueues();
}

using System;
using System.Messaging;

namespace MyProject
{
    /// <summary>
    /// Provides a container class for the example.
    /// </summary>
    public class MyNewQueue
    {

        //**************************************************
        // Provides an entry point into the application.
        //		
        // This example uses a cursor to step through the
        // message queues and list the public queues on the
        // network.
        //**************************************************

        public static void Main()
        {
            // Create a new instance of the class.
            MyNewQueue myNewQueue = new MyNewQueue();

            // Output the count of Lowest priority messages.
            myNewQueue.ListPublicQueues();
                        
            return;
        }

        //**************************************************
        // Iterates through message queues and examines the
        // path for each queue. Also displays the number of
        // public queues on the network.
        //**************************************************
        
        public void ListPublicQueues()
        {
            // Holds the count of private queues.
            uint numberQueues = 0;
    
            // Get a cursor into the queues on the network.
            MessageQueueEnumerator myQueueEnumerator =
                MessageQueue.GetMessageQueueEnumerator();

            // Move to the next queue and read its path.
            while(myQueueEnumerator.MoveNext())
            {
                // Increase the count if priority is Lowest.
                Console.WriteLine(myQueueEnumerator.Current.Path);
                numberQueues++;
            }

            // Display final count.
            Console.WriteLine("Number of public queues: " +
                numberQueues.ToString());
            
            return;
        }
    }
}
Imports System.Messaging



Public Class MyNewQueue


        
        ' Provides an entry point into the application.
        '		 
        ' This example uses a cursor to step through the
        ' message queues and list the public queues on the
        ' network.
        

        Public Shared Sub Main()

            ' Create a new instance of the class.
            Dim myNewQueue As New MyNewQueue()

            ' Output the count of Lowest priority messages.
            myNewQueue.ListPublicQueues()

            Return

        End Sub


        
        ' Iterates through message queues and examines the
        ' path for each queue. Also displays the number of
        ' public queues on the network.
        

        Public Sub ListPublicQueues()

            ' Holds the count of private queues.
            Dim numberQueues As Int32 = 0

            ' Get a cursor into the queues on the network.
            Dim myQueueEnumerator As MessageQueueEnumerator = _
                MessageQueue.GetMessageQueueEnumerator()

            ' Move to the next queue and read its path.
            While myQueueEnumerator.MoveNext()
                ' Increase the count if the priority is Lowest.
                Console.WriteLine(myQueueEnumerator.Current.Path)
                numberQueues += 1
            End While

            ' Display final count.
            Console.WriteLine(("Number of public queues: " + _
                numberQueues.ToString()))

            Return

        End Sub

End Class

Comentarios

Se usa MessageQueueEnumerator para la interacción dinámica con las colas en la red.Use MessageQueueEnumerator for dynamic interaction with queues on the network. Los métodos disponibles a través de la MessageQueue clase pueden devolver un objeto MessageQueueEnumerator que contiene una lista dinámica de colas, o una matriz que contiene una instantánea de la colección Queue en el momento en que se llamó al método especificado.Methods available through the MessageQueue class can return either a MessageQueueEnumerator containing a dynamic list of queues, or an array that contains a snapshot of the queue collection at the time the specified method was called.

No hay ningún orden definido de colas en una red.There is no defined ordering of queues in a network. No están ordenadas, por ejemplo, por equipo, etiqueta, estado público o privado, u otros criterios accesibles por el usuario.They are not ordered, for example, by computer, label, public or private status, or other user-accessible criteria. Un MessageQueueEnumerator es un cursor, inicializado en el encabezado de una lista dinámica.A MessageQueueEnumerator is a cursor, initialized to the head of a dynamic list. Puede desplace el cursor a la primera cola de la enumeración mediante una llamada a MoveNext .You can move the cursor to the first queue of the enumeration by calling MoveNext. Una vez inicializado el enumerador, puede usar MoveNext para avanzar a través de las colas restantes.After the enumerator has been initialized, you can use MoveNext to step forward through the remaining queues.

No es posible retroceder con un MessageQueueEnumerator .It is not possible to step backward with a MessageQueueEnumerator. Un cursor solo permite el movimiento hacia delante a través de la enumeración Queue.A cursor only allows forward movement through the queue enumeration. Sin embargo, puede llamar Reset a para restablecer la enumeración y colocar el cursor al principio de la lista de nuevo.However, you can call Reset to reset the enumeration and put the cursor at the beginning of the list again. Dado que el enumerador es dinámico, el enumerador puede obtener acceso a una cola que se anexa más allá de la posición actual del cursor.Because the enumerator is dynamic, a queue that is appended beyond the cursor's current position can be accessed by the enumerator. No se puede tener acceso a una cola que se inserta antes de la posición actual del cursor sin llamar primero a RESET.A queue that is inserted before the cursor's current position cannot be accessed without first calling Reset.

Propiedades

Current

Obtiene el objeto MessageQueue actual de la enumeración.Gets the current MessageQueue of the enumeration.

LocatorHandle

Obtiene el identificador nativo de Message Queuing que se utiliza para buscar colas en una red.Gets the native Message Queuing handle used to locate queues in a network.

Métodos

Close()

Libera los recursos asociados al enumerador.Frees the resources associated with the enumerator.

CreateObjRef(Type)

Crea un objeto que contiene toda la información relevante necesaria para generar un proxy utilizado para comunicarse con un objeto remoto.Creates an object that contains all the relevant information required to generate a proxy used to communicate with a remote object.

(Heredado de MarshalByRefObject)
Dispose()

Libera todos los recursos que usa MessageQueueEnumerator.Releases all resources used by the MessageQueueEnumerator.

Dispose(Boolean)

Libera los recursos no administrados que usa MessageQueueEnumerator y, de forma opcional, libera los recursos administrados.Releases the unmanaged resources used by the MessageQueueEnumerator and optionally releases the managed resources.

Equals(Object)

Determina si el objeto especificado es igual que el objeto actual.Determines whether the specified object is equal to the current object.

(Heredado de Object)
Finalize()

Libera los recursos mantenidos por la cola.Releases the resources held by the queue.

GetHashCode()

Sirve como la función hash predeterminada.Serves as the default hash function.

(Heredado de Object)
GetLifetimeService()

Recupera el objeto de servicio de duración actual que controla la directiva de duración de esta instancia.Retrieves the current lifetime service object that controls the lifetime policy for this instance.

(Heredado de MarshalByRefObject)
GetType()

Obtiene el Type de la instancia actual.Gets the Type of the current instance.

(Heredado de Object)
InitializeLifetimeService()

Obtiene un objeto de servicio de duración para controlar la directiva de duración de esta instancia.Obtains a lifetime service object to control the lifetime policy for this instance.

(Heredado de MarshalByRefObject)
MemberwiseClone()

Crea una copia superficial del Object actual.Creates a shallow copy of the current Object.

(Heredado de Object)
MemberwiseClone(Boolean)

Crea una copia superficial del objeto MarshalByRefObject actual.Creates a shallow copy of the current MarshalByRefObject object.

(Heredado de MarshalByRefObject)
MoveNext()

Desplaza el enumerador a la siguiente cola de la enumeración si hay alguna disponible.Advances the enumerator to the next queue of the enumeration, if one is currently available.

Reset()

Restablece el cursor, de forma que señala al principio de la enumeración.Resets the cursor, so it points to the beginning of the enumeration.

ToString()

Devuelve una cadena que representa el objeto actual.Returns a string that represents the current object.

(Heredado de Object)

Implementaciones de interfaz explícitas

IEnumerator.Current

Obtiene el objeto MessageQueue actual de la enumeración.Gets the current MessageQueue of the enumeration.

Se aplica a

Consulte también