次の方法で共有


MessageEnumerator.MoveNext メソッド (TimeSpan)

キュー内の次のメッセージに列挙子を進めます。列挙子がキューの最後に位置しているときは、 MoveNext は、メッセージが使用できるようになるか指定のタイムアウト時間が経過するまで待機します。

Overloads Public Function MoveNext( _
   ByVal timeout As TimeSpan _) As Boolean
[C#]
public bool MoveNext(TimeSpantimeout);
[C++]
public: bool MoveNext(TimeSpantimeout);
[JScript]
public function MoveNext(
   timeout : TimeSpan) : Boolean;

パラメータ

  • timeout
    列挙子がキューの最後に位置しているときにメッセージが使用できるようになるまで待機する TimeSpan

戻り値

列挙子が次のメッセージに正常に進んだ場合は true 。列挙子がキューの最後に到達し、 timeout パラメータによって指定される時間内にメッセージが使用できるようにならない場合は false

例外

例外の種類 条件
ArgumentException タイムアウト パラメータに指定された値が無効です。負数を表している可能性があります。
MessageQueueException メッセージ キューに固有の例外がスローされました。

または

タイムアウトの時間が経過しました。

解説

このオーバーロードは、キュー内にメッセージがない場合、またはカーソルがキューの最後に到達した場合に待機します。キューが空であるため、またはコレクション内の最後の要素より後に移動したためにメッセージが現在使用できない場合、 MoveNext は指定のタイムアウトだけ待機します。

カーソルが既にキューの最後に位置しているときは、新しいメッセージが指定の時間間隔以内に到達し、新しいメッセージの優先順位がキュー内に存在するすべてのメッセージよりも低く、新しいメッセージがキューの最後に挿入される場合にだけ、 MoveNexttrue を返します。パラメータのないオーバーロードは、キュー内にそれ以上メッセージがない場合にはすぐに結果を返します。

作成時に、列挙子は概念的には列挙体の最初のメッセージより前に位置します。 MoveNext を最初に呼び出したときに列挙体の先頭のメッセージが表示されます。

必要条件

プラットフォーム: Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 ファミリ

.NET Framework セキュリティ:

参照

MessageEnumerator クラス | MessageEnumerator メンバ | System.Messaging 名前空間 | MessageEnumerator.MoveNext オーバーロードの一覧 | Current | Reset | Message