// This always happens under executor lock
 void AddCheckCanPersistWaiter(WaitForCanPersistAsyncResult result)
 {
     // Creation doesn't require the lock since it is guarded
     // by the executor lock.
     if (this.checkCanPersistWaiters == null)
     {
         this.checkCanPersistWaiters = new List<WaitForCanPersistAsyncResult>();
     }
     this.checkCanPersistWaiters.Add(result);
 }
 private void AddCheckCanPersistWaiter(WaitForCanPersistAsyncResult result)
 {
     if (this.checkCanPersistWaiters == null)
     {
         this.checkCanPersistWaiters = new List<WaitForCanPersistAsyncResult>();
     }
     this.checkCanPersistWaiters.Add(result);
 }