我正在使用(Windows Azure 服务总线包版本 2.1.2.0) PeekBatch(<messageCount>)
上的方法。QueueClient
它第一次运行良好,并返回队列中存在的单个消息,但后续调用什么也不返回。五分钟后,呼叫将再次返回消息。
五分钟是 a 上的最长锁定时间BrokeredMessage
,所以我想知道是否PeekBatch
真的像在接收上那样锁定这些消息,尽管据我所知,偷看不应该锁定。
我正在尝试构建一个 MVC 视图,以便能够查看队列中实际存在的内容,但这会妨碍我。任何人都可以提供任何指导吗?
更新:这似乎只发生在我QueueClient
使用静态属性缓存时。QueueClient
如果我每次都创造新鲜,那么PeekBatch
作品就如预期的那样。我仍然不知道为什么重用 aQueueClient
会导致这种情况。 微软似乎建议重用它,QueueClient
而不是每次都重新创建它,所以我在这里仍然不知所措。