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

ServiceBusReceiver 类

定义

ServiceBusReceiver负责接收ServiceBusReceivedMessage和解决来自队列和订阅的消息。 它是通过调用 CreateReceiver(String, ServiceBusReceiverOptions)构造的。

public class ServiceBusReceiver : IAsyncDisposable
type ServiceBusReceiver = class
    interface IAsyncDisposable
Public Class ServiceBusReceiver
Implements IAsyncDisposable
继承
ServiceBusReceiver
派生
实现

注解

ServiceBusReceiver可以安全地缓存并在应用程序的生存期内使用,或者直到ServiceBusClient释放它所创建的 。 当应用程序定期或半定期使用消息时,建议缓存接收方。 接收方负责确保高效使用网络、CPU 和内存。 在应用程序关闭时对关联的 ServiceBusClient 调用DisposeAsync()可确保正确清理接收方使用的网络资源和其他非托管对象。

构造函数

ServiceBusReceiver()

初始化 类的新实例 ServiceBusReceiver 进行模拟。

ServiceBusReceiver(ServiceBusClient, String, ServiceBusReceiverOptions)

初始化 类的新实例, ServiceBusReceiver 以便与派生类型一起使用。

ServiceBusReceiver(ServiceBusClient, String, String, ServiceBusReceiverOptions)

初始化 类的新实例, ServiceBusReceiver 以便与派生类型一起使用。

属性

EntityPath

接收方连接到的服务总线实体的路径,特定于包含它的服务总线命名空间。

FullyQualifiedNamespace

接收方与之关联的完全限定的服务总线命名空间。 这可能类似于 {yournamespace}.servicebus.windows.net

Identifier

用于标识接收方客户端的名称。 如果 null 为空,则将使用随机唯一值。

IsClosed

指示是否已关闭。ServiceBusReceiver

PrefetchCount

将预先从队列或订阅请求并在本地排队而不考虑处理当前是否处于活动状态的消息数,旨在通过允许接收方从本地缓存接收而不是等待服务请求来帮助最大化吞吐量

ReceiveMode

ReceiveMode用于指定消息接收方式的 。

方法

AbandonMessageAsync(ServiceBusReceivedMessage, IDictionary<String,Object>, CancellationToken)

放弃 ServiceBusReceivedMessage。这会使消息再次可供立即处理,因为接收方持有的消息上的锁将被释放。

CloseAsync(CancellationToken)

执行清理 所使用的 ServiceBusReceiver资源所需的任务。

CompleteMessageAsync(ServiceBusReceivedMessage, CancellationToken)

完成 ServiceBusReceivedMessage。 这会从服务中删除消息。

DeadLetterMessageAsync(ServiceBusReceivedMessage, IDictionary<String,Object>, CancellationToken)

将消息移动到死信子队列。

DeadLetterMessageAsync(ServiceBusReceivedMessage, IDictionary<String,Object>, String, String, CancellationToken)

将消息移动到死信子队列。

DeadLetterMessageAsync(ServiceBusReceivedMessage, String, String, CancellationToken)

将消息移动到死信子队列。

DeferMessageAsync(ServiceBusReceivedMessage, IDictionary<String,Object>, CancellationToken)

指示接收方希望延迟消息的处理。

DisposeAsync()

执行清理 所使用的 ServiceBusReceiver资源所需的任务。 这等效于调用 CloseAsync(CancellationToken)

PeekMessageAsync(Nullable<Int64>, CancellationToken)

在不更改接收方或消息源的状态的情况下提取下一个活动 ServiceBusReceivedMessage 状态。

PeekMessagesAsync(Int32, Nullable<Int64>, CancellationToken)

ServiceBusReceiver负责接收ServiceBusReceivedMessage和解决来自队列和订阅的消息。 它是通过调用 CreateReceiver(String, ServiceBusReceiverOptions)构造的。

ReceiveDeferredMessageAsync(Int64, CancellationToken)

接收由 标识的 sequenceNumber延迟消息。

ReceiveDeferredMessagesAsync(IEnumerable<Int64>, CancellationToken)

接收由 sequenceNumbers标识的延迟消息列表。

ReceiveMessageAsync(Nullable<TimeSpan>, CancellationToken)

ServiceBusReceivedMessage使用 ReceiveMode 模式从实体接收 。 ReceiveMode 默认为“PeekLock”模式。

ReceiveMessagesAsync(CancellationToken)

使用 ReceiveMode 模式从实体接收异步可枚举的消息。 ReceiveMode 默认为“PeekLock”模式。 当迭代 IAsyncEnumerable 时,将从实体接收消息。 如果没有可用的消息,此方法将继续轮询,直到消息可用,即永远不会返回 null。

ReceiveMessagesAsync(Int32, Nullable<TimeSpan>, CancellationToken)

使用 ReceiveMode 模式从实体接收 的列表ServiceBusReceivedMessageReceiveMode 默认为“PeekLock”模式。 此方法不保证返回确切 maxMessages 的消息,即使 maxMessages 队列或主题中有可用的消息。

RenewMessageLockAsync(ServiceBusReceivedMessage, CancellationToken)

续订消息上的锁。 将根据队列中指定的设置续订锁。

适用于