Свойство
ApproximateMessageCount
представляет общее количество сообщений, доступных в очереди на данный момент.Это не означает, что все сообщения ( max # 32 сообщений в потоке ) готовы к снятию с очереди.Вы можете использовать это свойство, чтобы определить, сколько сообщений находится в очереди.
queue.ApproximateMessageCount;
Если вы не можете получить сообщение по, GetMessagesAsync(numberOfMessages)
, то оно говорит, что все сообщения не доступны или невидимы для текущегоQueueClient.
var cloudQueueMessages = await cloudQueue.GetMessagesAsync(numberOfMessages);
Вы можете попробовать опрашивать очередь через некоторое время, чтобы увидеть, возвращаются ли сообщения на поверхность.
Обратите внимание, что рекомендуется установить достаточный тайм-аут видимости для любого сообщения, отправляемого в очередь наизбежать бесконечного голодания:)