MessageQueueEnumerator MessageQueueEnumerator MessageQueueEnumerator MessageQueueEnumerator Class

Определение

Предоставляет курсор последовательного доступа для перечисления сообщений в очереди сообщений.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
Наследование
MessageQueueEnumeratorMessageQueueEnumeratorMessageQueueEnumeratorMessageQueueEnumerator
Реализации

Примеры

В следующем примере кода выполняется итерация по всем очередям сообщений в сети и проверяет путь для каждой очереди.The following code example iterates through all the message queues in the network, and examines the path for each queue. Наконец он отображает количество общих очередей в сети.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
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 'Main


        
        ' 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 'ListPublicQueues

End Class 'MyNewQueue

Комментарии

Используйте MessageQueueEnumerator для динамического взаимодействия с очередями в сети.Use MessageQueueEnumerator for dynamic interaction with queues on the network. Методы, доступные через MessageQueue класс может возвратить либо MessageQueueEnumerator содержащий динамический список очередей, либо массив, содержащий моментальный снимок коллекции очереди во время вызова указанного метода.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.

Нет, не определен порядок очередей в сети.There is no defined ordering of queues in a network. Они не являются упорядочение, для этого компьютера "," Метка "," состояние общедоступных или частных или другим критериям, недоступны для пользователей.They are not ordered, for example, by computer, label, public or private status, or other user-accessible criteria. Объект MessageQueueEnumerator курсор, инициализируемый в заголовке динамического списка.A MessageQueueEnumerator is a cursor, initialized to the head of a dynamic list. Можно переместить курсор в первую очередь перечисления, вызвав MoveNext.You can move the cursor to the first queue of the enumeration by calling MoveNext. После инициализации перечислителя, можно использовать MoveNext шаг вперед по оставшимся очередям.After the enumerator has been initialized, you can use MoveNext to step forward through the remaining queues.

Невозможно на шаг назад с MessageQueueEnumerator.It is not possible to step backward with a MessageQueueEnumerator. Курсор позволяет перемещаться только вперед по перечислению очередей.A cursor only allows forward movement through the queue enumeration. Тем не менее, можно вызвать Reset для сброса перечисления и поместите курсор в начало списка.However, you can call Reset to reset the enumeration and put the cursor at the beginning of the list again. Так как перечислитель является динамическим, очереди, которые добавляются за текущей позицией курсора может осуществляться с помощью перечислителя.Because the enumerator is dynamic, a queue that is appended beyond the cursor's current position can be accessed by the enumerator. Очередь, которая вставляется перед текущей позицией курсора не может осуществляться без вызова метода Reset.A queue that is inserted before the cursor's current position cannot be accessed without first calling Reset.

Свойства

Current Current Current Current

Получает текущий объект MessageQueue перечисления.Gets the current MessageQueue of the enumeration.

LocatorHandle LocatorHandle LocatorHandle LocatorHandle

Получает собственный дескриптор Message Queuing, используемый для определения очередей в сети.Gets the native Message Queuing handle used to locate queues in a network.

Методы

Close() Close() Close() Close()

Освобождает ресурсы, связанные с перечислителем.Frees the resources associated with the enumerator.

CreateObjRef(Type) CreateObjRef(Type) CreateObjRef(Type) CreateObjRef(Type)

Создает объект, который содержит всю необходимую информацию для создания прокси-сервера, используемого для взаимодействия с удаленным объектом.Creates an object that contains all the relevant information required to generate a proxy used to communicate with a remote object.

(Inherited from MarshalByRefObject)
Dispose() Dispose() Dispose() Dispose()

Освобождает все ресурсы, занятые модулем MessageQueueEnumerator.Releases all resources used by the MessageQueueEnumerator.

Dispose(Boolean) Dispose(Boolean) Dispose(Boolean) Dispose(Boolean)

Освобождает неуправляемые ресурсы, используемые объектом MessageQueueEnumerator, а при необходимости освобождает также управляемые ресурсы.Releases the unmanaged resources used by the MessageQueueEnumerator and optionally releases the managed resources.

Equals(Object) Equals(Object) Equals(Object) Equals(Object)

Определяет, равен ли заданный объект текущему объекту.Determines whether the specified object is equal to the current object.

(Inherited from Object)
Finalize() Finalize() Finalize() Finalize()

Освобождает ресурсы, используемые очередью.Releases the resources held by the queue.

GetHashCode() GetHashCode() GetHashCode() GetHashCode()

Служит хэш-функцией по умолчанию.Serves as the default hash function.

(Inherited from Object)
GetLifetimeService() GetLifetimeService() GetLifetimeService() GetLifetimeService()

Извлекает объект обслуживания во время существования, который управляет политикой времени существования данного экземпляра.Retrieves the current lifetime service object that controls the lifetime policy for this instance.

(Inherited from MarshalByRefObject)
GetType() GetType() GetType() GetType()

Возвращает объект Type для текущего экземпляра.Gets the Type of the current instance.

(Inherited from Object)
InitializeLifetimeService() InitializeLifetimeService() InitializeLifetimeService() InitializeLifetimeService()

Получает объект службы времени существования для управления политикой времени существования для этого экземпляра.Obtains a lifetime service object to control the lifetime policy for this instance.

(Inherited from MarshalByRefObject)
MemberwiseClone() MemberwiseClone() MemberwiseClone() MemberwiseClone()

Создает неполную копию текущего объекта Object.Creates a shallow copy of the current Object.

(Inherited from Object)
MemberwiseClone(Boolean) MemberwiseClone(Boolean) MemberwiseClone(Boolean) MemberwiseClone(Boolean)

Создает неполную копию текущего объекта MarshalByRefObject.Creates a shallow copy of the current MarshalByRefObject object.

(Inherited from MarshalByRefObject)
MoveNext() MoveNext() MoveNext() MoveNext()

Перемещает перечислитель на следующую очередь перечисления, если таковая имеется.Advances the enumerator to the next queue of the enumeration, if one is currently available.

Reset() Reset() Reset() Reset()

Сброс курсора, теперь он указывает на начало перечисления.Resets the cursor, so it points to the beginning of the enumeration.

ToString() ToString() ToString() ToString()

Возвращает строку, представляющую текущий объект.Returns a string that represents the current object.

(Inherited from Object)

Явные реализации интерфейса

IEnumerator.Current IEnumerator.Current IEnumerator.Current IEnumerator.Current

Получает текущий объект MessageQueue перечисления.Gets the current MessageQueue of the enumeration.

Применяется к

Дополнительно