次の方法で共有


ServiceBusReceiver.DeferMessageAsync メソッド

定義

受信側がメッセージの処理を延期することを示します。

public virtual System.Threading.Tasks.Task DeferMessageAsync (Azure.Messaging.ServiceBus.ServiceBusReceivedMessage message, System.Collections.Generic.IDictionary<string,object> propertiesToModify = default, System.Threading.CancellationToken cancellationToken = default);
abstract member DeferMessageAsync : Azure.Messaging.ServiceBus.ServiceBusReceivedMessage * System.Collections.Generic.IDictionary<string, obj> * System.Threading.CancellationToken -> System.Threading.Tasks.Task
override this.DeferMessageAsync : Azure.Messaging.ServiceBus.ServiceBusReceivedMessage * System.Collections.Generic.IDictionary<string, obj> * System.Threading.CancellationToken -> System.Threading.Tasks.Task
Public Overridable Function DeferMessageAsync (message As ServiceBusReceivedMessage, Optional propertiesToModify As IDictionary(Of String, Object) = Nothing, Optional cancellationToken As CancellationToken = Nothing) As Task

パラメーター

propertiesToModify
IDictionary<String,Object>

メッセージの遅延中に変更するメッセージのプロパティ。

cancellationToken
CancellationToken

操作を取り消す要求を通知する省略可能 CancellationToken な インスタンス。

戻り値

操作が完了したときに解決されるタスク。

例外

  • メッセージのロックの有効期限が切れているか、メッセージが既に完了しています。 これは、セッションが有効なエンティティには適用されません。 Reasonこの場合、 は にMessageLockLost設定されます。
  • セッションのロックの有効期限が切れているか、メッセージが既に完了しています。 これは、セッションが有効なエンティティにのみ適用されます。 Reasonこの場合、 は にSessionLockLost設定されます。

注釈

今後このメッセージを再び受信するには、 を保存 SequenceNumber し、 を使用して ReceiveDeferredMessageAsync(Int64, CancellationToken)受信する必要があります。 メッセージの遅延はメッセージの有効期限には影響しません。つまり、遅延メッセージの有効期限が切れる可能性があります。 この操作は、この受信側が受信したメッセージに対してのみ実行できます。

適用対象