你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

MessageReceiver.PrefetchCount 属性

定义

在应用程序使用 Receive 请求消息时和之前,预提取旨在使消息随时可供本地检索,从而加速消息流。 设置非零值预提取预提取消息数。 将值设置为零会关闭预提取。 默认值为 0。

public int PrefetchCount { get; set; }
member this.PrefetchCount : int with get, set
Public Property PrefetchCount As Integer

属性值

实现

注解

启用预提取后,接收方将悄悄地获取比应用程序立即要求的消息多,达到 PrefetchCount 限制。 因此,单个初始 Receive/ReceiveAsync 调用将获取立即使用的消息,该消息将在可用时立即返回,客户端将继续获取更多消息以填充后台的预提取缓冲区。

虽然消息在预提取缓冲区中可用,但任何后续 ReceiveAsync 调用都将立即从缓冲区得到满足,并且缓冲区会在空间可用时在后台进行补充。如果没有可用于传递的消息,则接收操作将耗尽缓冲区,然后按预期等待或阻止。

预提取也适用于 RegisterMessageHandler(Func<Message,CancellationToken,Task>, Func<ExceptionReceivedEventArgs,Task>) API。

汇报此值会在下一次对服务进行接收调用时生效。

适用于