你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
ServiceBusClient.AcceptNextSessionAsync 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
重载
AcceptNextSessionAsync(String, ServiceBusSessionReceiverOptions, CancellationToken) |
创建一个 ServiceBusSessionReceiver 实例,该实例可用于通过接受包含活动消息的下一个解锁会话来接收和解决已启用会话的队列的消息。 如果没有具有活动消息的已解锁会话,则调用将在配置 TryTimeout 的值之后超时,并引发并将 ServiceBusExceptionReason 设置为 ServiceTimeout的 。 ServiceBusReceiveMode可以在 中ServiceBusReceiverOptions指定 ,以配置消息的接收方式。 默认值是 PeekLock。 |
AcceptNextSessionAsync(String, String, ServiceBusSessionReceiverOptions, CancellationToken) |
创建一个 ServiceBusSessionReceiver 实例,该实例可用于通过接受包含活动消息的下一个解锁会话来接收和解决已启用会话的订阅的消息。 如果没有具有活动消息的已解锁会话,则调用将在配置 TryTimeout 的值之后超时,并引发并将 ServiceBusExceptionReason 设置为 ServiceTimeout的 。 ServiceBusReceiveMode可以在 中ServiceBusReceiverOptions指定 ,以配置消息的接收方式。 默认值是 PeekLock。 |
AcceptNextSessionAsync(String, ServiceBusSessionReceiverOptions, CancellationToken)
- Source:
- ServiceBusClient.cs
- Source:
- ServiceBusClient.cs
创建一个 ServiceBusSessionReceiver 实例,该实例可用于通过接受包含活动消息的下一个解锁会话来接收和解决已启用会话的队列的消息。 如果没有具有活动消息的已解锁会话,则调用将在配置 TryTimeout 的值之后超时,并引发并将 ServiceBusExceptionReason 设置为 ServiceTimeout的 。 ServiceBusReceiveMode可以在 中ServiceBusReceiverOptions指定 ,以配置消息的接收方式。 默认值是 PeekLock。
public virtual System.Threading.Tasks.Task<Azure.Messaging.ServiceBus.ServiceBusSessionReceiver> AcceptNextSessionAsync(string queueName, Azure.Messaging.ServiceBus.ServiceBusSessionReceiverOptions options = default, System.Threading.CancellationToken cancellationToken = default);
abstract member AcceptNextSessionAsync : string * Azure.Messaging.ServiceBus.ServiceBusSessionReceiverOptions * System.Threading.CancellationToken -> System.Threading.Tasks.Task<Azure.Messaging.ServiceBus.ServiceBusSessionReceiver>
override this.AcceptNextSessionAsync : string * Azure.Messaging.ServiceBus.ServiceBusSessionReceiverOptions * System.Threading.CancellationToken -> System.Threading.Tasks.Task<Azure.Messaging.ServiceBus.ServiceBusSessionReceiver>
Public Overridable Function AcceptNextSessionAsync (queueName As String, Optional options As ServiceBusSessionReceiverOptions = Nothing, Optional cancellationToken As CancellationToken = Nothing) As Task(Of ServiceBusSessionReceiver)
参数
- queueName
- String
要为其创建 的已启用会话的 ServiceBusSessionReceiver 队列。
- options
- ServiceBusSessionReceiverOptions
用于配置 的ServiceBusSessionReceiver集ServiceBusSessionReceiverOptions。
- cancellationToken
- CancellationToken
一个可选 CancellationToken 实例,用于向请求发出取消操作的信号。
返回
范围 ServiceBusSessionReceiver 限定为指定队列和特定会话的 。
例外
实体中没有解锁的会话。 如果实体没有活动消息,或者所有消息都属于其他接收方锁定的会话,则可能会发生这种情况。 在这种情况下, Reason 将设置为 ServiceTimeout 。
注解
由于这会建立会话锁,因此此方法执行服务调用。 如果队列中没有可用的消息,则会引发 ServiceBusException 的 ReasonServiceTimeout。
适用于
AcceptNextSessionAsync(String, String, ServiceBusSessionReceiverOptions, CancellationToken)
- Source:
- ServiceBusClient.cs
- Source:
- ServiceBusClient.cs
创建一个 ServiceBusSessionReceiver 实例,该实例可用于通过接受包含活动消息的下一个解锁会话来接收和解决已启用会话的订阅的消息。 如果没有具有活动消息的已解锁会话,则调用将在配置 TryTimeout 的值之后超时,并引发并将 ServiceBusExceptionReason 设置为 ServiceTimeout的 。 ServiceBusReceiveMode可以在 中ServiceBusReceiverOptions指定 ,以配置消息的接收方式。 默认值是 PeekLock。
public virtual System.Threading.Tasks.Task<Azure.Messaging.ServiceBus.ServiceBusSessionReceiver> AcceptNextSessionAsync(string topicName, string subscriptionName, Azure.Messaging.ServiceBus.ServiceBusSessionReceiverOptions options = default, System.Threading.CancellationToken cancellationToken = default);
abstract member AcceptNextSessionAsync : string * string * Azure.Messaging.ServiceBus.ServiceBusSessionReceiverOptions * System.Threading.CancellationToken -> System.Threading.Tasks.Task<Azure.Messaging.ServiceBus.ServiceBusSessionReceiver>
override this.AcceptNextSessionAsync : string * string * Azure.Messaging.ServiceBus.ServiceBusSessionReceiverOptions * System.Threading.CancellationToken -> System.Threading.Tasks.Task<Azure.Messaging.ServiceBus.ServiceBusSessionReceiver>
Public Overridable Function AcceptNextSessionAsync (topicName As String, subscriptionName As String, Optional options As ServiceBusSessionReceiverOptions = Nothing, Optional cancellationToken As CancellationToken = Nothing) As Task(Of ServiceBusSessionReceiver)
参数
- topicName
- String
要为其创建 ServiceBusSessionReceiver 的主题。
- subscriptionName
- String
要为其创建 的已启用会话的 ServiceBusSessionReceiver 订阅。
- options
- ServiceBusSessionReceiverOptions
用于配置 的ServiceBusSessionReceiver集ServiceBusSessionReceiverOptions。
- cancellationToken
- CancellationToken
一个可选 CancellationToken 实例,用于向请求发出取消操作的信号。
返回
范围 ServiceBusSessionReceiver 限定为指定队列和特定会话的 。
例外
实体中没有解锁的会话。 如果实体没有消息,或者所有消息都属于其他接收方锁定的会话,则可能会发生这种情况。 在这种情况下, Reason 将设置为 ServiceTimeout 。
注解
由于这会建立会话锁,因此此方法执行服务调用。 如果队列中没有可用的消息,则会引发 ServiceBusException 的 ReasonServiceTimeout。