我正在运行一些使用 Azure CloudQueue 的测试,作为设置/拆卸,我调用 CreateIfNotExistsAsync() 和 DeleteIfExistsAsync()。然而,当我连续运行我的测试时,我得到了一个 Microsoft.WindowsAzure.Storage.StorageException 错误,“远程服务器返回错误:(409) 冲突。”
经过仔细查看服务器的响应,我发现StatusDescription显示“指定的队列正在被删除”。
有没有一种方法可以调用,以便一旦返回,我就知道队列已经被删除了?
=========================================================================
更新:现在我想起来了。如果Azure Queue服务器希望回复删除结果,它将不得不跟踪未完成的传入请求,这显然是一个糟糕的设计(易受DOS攻击)。
await cloudQueue.CreateIfNotExistsAsync();
// do work 1
await cloudQueue.DeleteIfExistsAsync();
await cloudQueue.CreateIfNotExistsAsync(); // throws exception
// do work 2
经过仔细查看服务器的响应,我发现StatusDescription显示“指定的队列正在被删除”。
有没有一种方法可以调用,以便一旦返回,我就知道队列已经被删除了?
=========================================================================
更新:现在我想起来了。如果Azure Queue服务器希望回复删除结果,它将不得不跟踪未完成的传入请求,这显然是一个糟糕的设计(易受DOS攻击)。