我正在运行一些使用Azure CloudQueue的测试,并且作为setup/teardown,我打电话给CreateIfNotExistsAsync()和DeleteIfExistsAsync()。但是,当我将测试重新运行时,出现了Microsoft.WindowsAzure.Storage.StorageException,“远程服务器返回了错误:(409)冲突。”如何等待Azure CloudQueue被删除?
await cloudQueue.CreateIfNotExistsAsync();
// do work 1
await cloudQueue.DeleteIfExistsAsync();
await cloudQueue.CreateIfNotExistsAsync(); // throws exception
// do work 2
在服务器的响应左看右看之后,我找到了状态说明称“指定的队列中被删除。”
有没有一种方法可以调用,所以一旦它返回,我知道肯定队列已被删除?
============================================== =========================== UPDATE现在我想到了。如果Azure的队列服务器要与删除结果回复,就必须跟踪未完成的传入的请求,这显然是DESGIN不好(易受DOS攻击)的...