2
我正在使用MongoDB实现PubSub。如果我创造我的查询指定与NoCursorTimeout一个TailableCursor:如何取消可拖动光标上的MoveNext操作
using(var enumerator = _Collection.FindAs<BsonDocument>(Query.GTE("CreationTimeUTC", DateTime.UtcNow))
.SetFlags(QueryFlags.AwaitData | QueryFlags.NoCursorTimeout | QueryFlags.TailableCursor)
.SetSortOrder(SortBy.Ascending("$natural")).GetEnumerator))
{
while(true)
{
if(enumerator.MoveNext())
{
//process the message here
}
}
}
的MoveNext()块无限期(或者直到数据可用或发生错误)。如果我想强制MoveNext()返回(例如,如果我想取消侦听),我该怎么做?在枚举器或光标上调用Dispose()?