В документации Azure по служебной шине есть комментарий:
// Примечание. Используйте параметр cancellationToken, необходимый для определения, был ли queueClient уже closed.
// Если queueClient уже закрыт, вы можете не вызывать CompleteAsyn c () или AbandonAsyn c () et c.
// для избегайте ненужных исключений.
Я пытался найти дополнительную информацию о том, как использовать токен «по мере необходимости», но для меня это не очевидно. Я попытался прочитать раздел Отмена задания , но ничего не вышло.
Маркер имеет несколько свойств, CanBeCancelled
и IsCancellationRequested
, которые выглядят интересными.
if (!token.IsCancellationRequested)
{
await queueClient.CompleteAsync(message.SystemProperties.LockToken);
}
if (token.CanBeCanceled)
{
await queueClient.CompleteAsync(message.SystemProperties.LockToken);
}
Как правильно использовать токен «по мере необходимости» при получении сообщений в режиме Peek Lock?