MessageEnumerator.MoveNext 方法

定义

使枚举数前进到队列中的下一条消息。

重载

MoveNext()

如果当前队列中有下一条可用的消息,则使枚举数前进到该消息。

MoveNext(TimeSpan)

使枚举数前进到队列中的下一条消息。 如果枚举数位于队列的末尾,则 MoveNext() 将一直等到消息可用或给定 timeout 到期为止。

MoveNext()

如果当前队列中有下一条可用的消息,则使枚举数前进到该消息。

public:
 virtual bool MoveNext();
public bool MoveNext ();
abstract member MoveNext : unit -> bool
override this.MoveNext : unit -> bool
Public Function MoveNext () As Boolean

返回

如果枚举器已成功推进到下一条消息,则为 true;如果枚举器已传递到队列的末尾,则为 false

实现

例外

引发了消息队列特定的异常。

注解

如果队列中没有消息,则立即返回此重载。 还有另一个重载等待指定的 TimeSpan ,以便消息到达。

如果消息当前不可用,因为队列为空或由于你移动了集合中的最后一个元素, MoveNextfalse 返回调用方法。

创建时,枚举器在概念上定位在队列的第一条消息之前,对 的第一次调用 MoveNext 会将队列的第一条消息引入视图。

另请参阅

适用于

MoveNext(TimeSpan)

使枚举数前进到队列中的下一条消息。 如果枚举数位于队列的末尾,则 MoveNext() 将一直等到消息可用或给定 timeout 到期为止。

public:
 bool MoveNext(TimeSpan timeout);
public bool MoveNext (TimeSpan timeout);
member this.MoveNext : TimeSpan -> bool
Public Function MoveNext (timeout As TimeSpan) As Boolean

参数

timeout
TimeSpan

枚举数位于队列的末尾时,等待消息变得可用的 TimeSpan

返回

如果枚举数成功地前进到下一条消息,为 true;如果枚举数已经到达队列的末尾,并且在 timeout 参数所指定的时间内没有消息变得可用,则为 false

例外

为 timeout 参数指定的值无效。 它可能表示负数。

引发了消息队列特定的异常。

- 或 -

超时已过期。

注解

如果队列中没有消息或游标已到达队列的末尾,则此重载将等待。 如果消息当前不可用,因为队列为空或已移动超出集合中的最后一个元素, MoveNext 则等待指定的超时。

如果游标已位于队列末尾, MoveNext 则仅当新消息在指定时间间隔内到达时返回 true ,其优先级低于队列中当前所有消息,并且位于队列末尾。 如果队列中没有其他消息,则没有参数的重载将立即返回。

创建时,枚举器在概念上定位在枚举的第一条消息之前,而对 的第一次调用 MoveNext 会将枚举的第一条消息引入视图。

另请参阅

适用于