예제 #1
0
 /// <summary>
 /// Puts the lease on the given container in a renewed state.
 /// </summary>
 /// <param name="container">The container with the lease.</param>
 /// <param name="leaseTime">The amount of time on the renewed lease.</param>
 /// <returns>The lease ID of the current lease.</returns>
 internal static string SetRenewedStateAPM(CloudBlobContainer container, TimeSpan? leaseTime)
 {
     string leaseId = SetLeasedStateAPM(container, leaseTime);
     using (AutoResetEvent waitHandle = new AutoResetEvent(false))
     {
         IAsyncResult result = container.BeginRenewLease(AccessCondition.GenerateLeaseCondition(leaseId), ar => waitHandle.Set(), null);
         waitHandle.WaitOne();
         container.EndRenewLease(result);
         return leaseId;
     }
 }