Viv*_*sra 2 timeout azure blobs azure-storage-blobs
我知道我们可以在blob上获得60秒或无限的租约.对于以下代码:
var account = CloudStorageAccount.DevelopmentStorageAccount;
var blob = account.CreateCloudBlobClient().GetBlobReference("container/blob");
var leaseId = blob.AcquireLease();
blob.UploadByteArray(bytes);
blob.ReleaseLease(leaseId);
Run Code Online (Sandbox Code Playgroud)
如果uploadBtyeArray时间因文件大小而异.如何在上传完成之前继续续订租约.
此致,Vivek
在调用之后,AcquireLease
你可以启动一个新的线程,在它到期之前不断续订租约.上传完成后,您应该简单地中止执行自动续订的线程.
您可能希望查看Steve Marx的WazStorageExtensions,它带有AutoRenewLease类(查看DoOnce方法).在内部,AutoRenewLease
类使用这样的线程来保持租约:
renewalThread = new Thread(() =>
{
while (true)
{
Thread.Sleep(TimeSpan.FromSeconds(40));
blob.RenewLease(leaseId);
}
});
renewalThread.Start();
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
1511 次 |
最近记录: |