你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
DeviceClient.ReceiveAsync 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
重载
ReceiveAsync(CancellationToken) |
使用取消令牌从设备队列接收消息。 处理收到的消息后,客户端应调用 CompleteAsync(Message, CancellationToken)、 AbandonAsync(Message, CancellationToken)或 RejectAsync(Message, CancellationToken),然后释放该消息。 |
ReceiveAsync(TimeSpan) |
使用超时从设备队列接收消息。 处理收到的消息后,客户端应调用 CompleteAsync(Message, CancellationToken)、 AbandonAsync(Message, CancellationToken)或 RejectAsync(Message, CancellationToken),然后释放该消息。 |
ReceiveAsync() |
使用默认超时从设备队列接收消息。 处理收到的消息后,客户端应调用 CompleteAsync(Message)、 AbandonAsync(Message)或 RejectAsync(Message),然后释放该消息。 |
ReceiveAsync(CancellationToken)
使用取消令牌从设备队列接收消息。 处理收到的消息后,客户端应调用 CompleteAsync(Message, CancellationToken)、 AbandonAsync(Message, CancellationToken)或 RejectAsync(Message, CancellationToken),然后释放该消息。
public System.Threading.Tasks.Task<Microsoft.Azure.Devices.Client.Message> ReceiveAsync (System.Threading.CancellationToken cancellationToken);
member this.ReceiveAsync : System.Threading.CancellationToken -> System.Threading.Tasks.Task<Microsoft.Azure.Devices.Client.Message>
Public Function ReceiveAsync (cancellationToken As CancellationToken) As Task(Of Message)
参数
- cancellationToken
- CancellationToken
用于取消操作的取消标记。
返回
收到的消息;如果取消令牌过期之前没有消息,则为 null
例外
取消操作时引发。
取消操作时引发。 内部异常将为 OperationCanceledException。
注解
不能通过 MQTT 协议拒绝或放弃消息。 如需了解详情,请访问 https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-messages-c2d#the-cloud-to-device-message-life-cycle。
适用于
ReceiveAsync(TimeSpan)
使用超时从设备队列接收消息。 处理收到的消息后,客户端应调用 CompleteAsync(Message, CancellationToken)、 AbandonAsync(Message, CancellationToken)或 RejectAsync(Message, CancellationToken),然后释放该消息。
public System.Threading.Tasks.Task<Microsoft.Azure.Devices.Client.Message> ReceiveAsync (TimeSpan timeout);
member this.ReceiveAsync : TimeSpan -> System.Threading.Tasks.Task<Microsoft.Azure.Devices.Client.Message>
Public Function ReceiveAsync (timeout As TimeSpan) As Task(Of Message)
参数
- timeout
- TimeSpan
返回
收到的消息;如果没有消息,则为 null,直到指定的时间已过。
注解
不能通过 MQTT 协议拒绝或放弃消息。 如需了解详情,请访问 https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-messages-c2d#the-cloud-to-device-message-life-cycle。
适用于
ReceiveAsync()
使用默认超时从设备队列接收消息。 处理收到的消息后,客户端应调用 CompleteAsync(Message)、 AbandonAsync(Message)或 RejectAsync(Message),然后释放该消息。
public System.Threading.Tasks.Task<Microsoft.Azure.Devices.Client.Message> ReceiveAsync ();
member this.ReceiveAsync : unit -> System.Threading.Tasks.Task<Microsoft.Azure.Devices.Client.Message>
Public Function ReceiveAsync () As Task(Of Message)
返回
接收消息;如果在默认超时之前没有消息,则为 null