MessageQueue.GetMessageEnumerator メソッドとは? わかりやすく解説

Weblio 辞書 > コンピュータ > .NET Framework クラス ライブラリ リファレンス > MessageQueue.GetMessageEnumerator メソッドの意味・解説 

MessageQueue.GetMessageEnumerator メソッド

メモ : このメソッドは、互換性のために残されています。

キューにあるすべてのメッセージに対して列挙オブジェクト作成しますGetMessageEnumerator使用避けてください代わりに、GetMessageEnumerator2 を使用してください

名前空間: System.Messaging
アセンブリ: System.Messaging (system.messaging.dll 内)
構文構文

<ObsoleteAttribute("This method returns a MessageEnumerator
 that implements RemoveCurrent family of methods incorrectly. Please use GetMessageEnumerator2
 instead.")> _
Public Function GetMessageEnumerator As
 MessageEnumerator
Dim instance As MessageQueue
Dim returnValue As MessageEnumerator

returnValue = instance.GetMessageEnumerator
[ObsoleteAttribute("This method returns a MessageEnumerator that implements
 RemoveCurrent family of methods incorrectly. Please use GetMessageEnumerator2 instead.")]
 
public MessageEnumerator GetMessageEnumerator ()
[ObsoleteAttribute(L"This method returns a MessageEnumerator that implements
 RemoveCurrent family of methods incorrectly. Please use GetMessageEnumerator2 instead.")]
 
public:
MessageEnumerator^ GetMessageEnumerator ()
/** @attribute ObsoleteAttribute("This method returns a MessageEnumerator that
 implements RemoveCurrent family of methods incorrectly. Please use GetMessageEnumerator2
 instead.") */ 
public MessageEnumerator GetMessageEnumerator ()
ObsoleteAttribute("This method returns a MessageEnumerator that implements RemoveCurrent
 family of methods incorrectly. Please use GetMessageEnumerator2 instead.")
 
public function GetMessageEnumerator () : MessageEnumerator

戻り値
キュー含まれるメッセージ保持する MessageEnumerator。

解説解説

GetMessageEnumerator は、キューにあるすべてのメッセージ動的リスト作成しますGetMessageEnumerator返す MessageEnumerator に対して RemoveCurrent を呼び出して列挙子の現在の位置にあるメッセージキューから削除できます

カーソルは、キューにあるメッセージ動的リスト関連付けられるため、メッセージ現在のカーソル位置よりも後ろにあれば、列挙体はキューメッセージに対して行った変更反映します。たとえば、カーソル現在位置よりも後ろ配置され優先順位が低いメッセージ列挙子は自動的にアクセスできます。しかし、その位置よりも前に挿入され優先順位が高いメッセージにはアクセスできません。ただし、列挙体はリセットできます。つまり、MessageEnumerator に対して Reset呼び出してリスト先頭カーソルを戻すことができます

列挙体の中でのメッセージ順序は、キューの中での順序反映します。そのため、優先順位が高いメッセージは、優先順位が低いメッセージよりも前に出現します。

キューにあるメッセージへの動的接続ではなく静的スナップショット必要な場合は、GetAllMessages を呼び出します。このメソッドは、メソッド呼び出され時点でのメッセージを表す Message オブジェクト配列返します

このメソッド各種ワークグループ モード使用できるかどうか次の表に示します

使用例使用例

キューにあるメッセージ動的リスト取得しPriority プロパティが MessagePriority.Lowest に設定されすべてのメッセージカウントするコード例次に示します

Imports System
Imports System.Messaging

Public Class MyNewQueue


        
        ' Provides an entry point into the application.
        '         
        ' This example uses a cursor to step through the
        ' messages in a queue and counts the number of 
        ' Lowest priority messages.
        

        Public Shared Sub
 Main()

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

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

            Return

        End Sub 'Main


        
        ' Iterates through messages in a queue and examines
        ' their priority.
        

        Public Sub CountLowestPriority()

            ' Holds the count of Lowest priority messages.
            Dim numberItems As Int32 = 0

            ' Connect to a queue.
            Dim myQueue As New
 MessageQueue(".\myQueue")

            ' Get a cursor into the messages in the queue.
            Dim myEnumerator As MessageEnumerator
 = _
                myQueue.GetMessageEnumerator()

            ' Specify that the messages's priority should be read.
            myQueue.MessageReadPropertyFilter.Priority = True

            ' Move to the next message and examine its priority.
            While myEnumerator.MoveNext()

                ' Increase the count if the priority is Lowest.
                If myEnumerator.Current.Priority = _
                    MessagePriority.Lowest Then
                    numberItems += 1
                End If

            End While

            ' Display final count.
            Console.WriteLine(("Lowest priority messages: "
 + _
                numberItems.ToString()))

            Return

        End Sub 'CountLowestPriority

End Class 'MyNewQueue

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
        // messages in a queue and counts the number of 
        // Lowest priority messages.
        //**************************************************

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

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


        //**************************************************
        // Iterates through messages in a queue and examines
        // their priority.
        //**************************************************
        
        public void CountLowestPriority()
        {
            // Holds the count of Lowest priority messages.
            uint numberItems = 0;

            // Connect to a queue.
            MessageQueue myQueue = new MessageQueue(".\\myQueue");
    
            // Get a cursor into the messages in the queue.
            MessageEnumerator myEnumerator = 
                myQueue.GetMessageEnumerator();

            // Specify that the messages's priority should be read.
            myQueue.MessageReadPropertyFilter.Priority = true;

            // Move to the next message and examine its priority.
            while(myEnumerator.MoveNext())
            {
                // Increase the count if priority is Lowest.
                if(myEnumerator.Current.Priority == 
                    MessagePriority.Lowest)
                    
                    numberItems++;
            }

            // Display final count.
            Console.WriteLine("Lowest priority messages: " + 
                numberItems.ToString());
            
            return;
        }
    }
}
#using <system.dll>
#using <system.messaging.dll>

using namespace System;
using namespace System::Messaging;
ref class MyNewQueue
{
public:
   void CountLowestPriority()
   {
      
      // Holds the count of Lowest priority messages.
      UInt32 numberItems = 0;
      
      // Connect to a queue.
      MessageQueue^ myQueue = gcnew MessageQueue( ".\\myQueue" );
      
      // Get a cursor into the messages in the queue.
      MessageEnumerator^ myEnumerator = myQueue->GetMessageEnumerator();
      
      // Specify that the messages's priority should be read.
      myQueue->MessageReadPropertyFilter->Priority = true;
      
      // Move to the next message and examine its priority.
      while ( myEnumerator->MoveNext() )
      {
         
         // Increase the count if priority is Lowest.
         if ( myEnumerator->Current->Priority == MessagePriority::Lowest
 )
                  numberItems++;
      }

      
      // Display final count.
      Console::WriteLine( "Lowest priority messages: {0}", numberItems
 );
      return;
   }

};

int main()
{
   
   // Create a new instance of the class.
   MyNewQueue^ myNewQueue = gcnew MyNewQueue;
   
   // Output the count of Lowest priority messages.
   myNewQueue->CountLowestPriority();
   return 0;
}

package MyProject;

import System.*;
import System.Messaging.*;

/// <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
    // messages in a queue and counts the number of 
    // Lowest priority messages.
    //**************************************************
    public static void main(String[]
 args)
    {
        // Create a new instance of the class.
        MyNewQueue myNewQueue = new MyNewQueue();
        // Output the count of Lowest priority messages.
        myNewQueue.CountLowestPriority();
        return;
    } //main

    //**************************************************
    // Iterates through messages in a queue and examines
    // their priority.
    //**************************************************
    public void CountLowestPriority()
    {
        // Holds the count of Lowest priority messages.
        long numberItems = 0;
        // Connect to a queue.
        MessageQueue myQueue = new MessageQueue(".\\myQueue");
        // Get a cursor into the messages in the queue.
        MessageEnumerator myEnumerator = myQueue.GetMessageEnumerator();
        // Specify that the messages's priority should be read.
        myQueue.get_MessageReadPropertyFilter().set_Priority(true);
        // Move to the next message and examine its priority.
        while (myEnumerator.MoveNext()) {
            // Increase the count if priority is Lowest.
            if (myEnumerator.get_Current().get_Priority().
                Equals(MessagePriority.Lowest)) {
                numberItems++;
            }
        }
        // Display final count.
        Console.WriteLine("Lowest priority messages: "
            + ((Int32)numberItems).ToString());
        return;
    } //CountLowestPriority
} //MyNewQueue
.NET Framework のセキュリティ.NET Frameworkセキュリティ
プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照
関連項目
MessageQueue クラス
MessageQueue メンバ
System.Messaging 名前空間
GetAllMessages
GetMessageEnumerator2
GetMessageQueueEnumerator



英和和英テキスト翻訳>> Weblio翻訳
英語⇒日本語日本語⇒英語
  

辞書ショートカット

すべての辞書の索引

「MessageQueue.GetMessageEnumerator メソッド」の関連用語

MessageQueue.GetMessageEnumerator メソッドのお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



MessageQueue.GetMessageEnumerator メソッドのページの著作権
Weblio 辞書 情報提供元は 参加元一覧 にて確認できます。

   
日本マイクロソフト株式会社日本マイクロソフト株式会社
© 2024 Microsoft.All rights reserved.

©2024 GRAS Group, Inc.RSS