MessageEnumerator.MoveNext 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
使枚举数前进到队列中的下一条消息。
重载
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 ,以便消息到达。
如果消息当前不可用,因为队列为空或由于你移动了集合中的最后一个元素, MoveNext 则 false
返回调用方法。
创建时,枚举器在概念上定位在队列的第一条消息之前,对 的第一次调用 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
参数
返回
如果枚举数成功地前进到下一条消息,为 true
;如果枚举数已经到达队列的末尾,并且在 timeout
参数所指定的时间内没有消息变得可用,则为 false
。
例外
为 timeout 参数指定的值无效。 它可能表示负数。
注解
如果队列中没有消息或游标已到达队列的末尾,则此重载将等待。 如果消息当前不可用,因为队列为空或已移动超出集合中的最后一个元素, MoveNext 则等待指定的超时。
如果游标已位于队列末尾, MoveNext 则仅当新消息在指定时间间隔内到达时返回 true
,其优先级低于队列中当前所有消息,并且位于队列末尾。 如果队列中没有其他消息,则没有参数的重载将立即返回。
创建时,枚举器在概念上定位在枚举的第一条消息之前,而对 的第一次调用 MoveNext 会将枚举的第一条消息引入视图。