예제 #1
0
 public void TryReleaseLock(Address addr, string transactionID)
 {
     if (addr.Equals(IsisSystem.GetMyAddress()))
     {
         Transaction trans = FileServerComm.getInstance().transManager.removeAndGetTransaction(transactionID);
         if (null != trans)
         {
             trans.signalTransactionEnd();
         }
     }
 }
예제 #2
0
 public void sendOOBData(Group group, MemoryMappedFile mmf, string FileName, List <Address> where)
 {
     group.OOBRegister(FileName, mmf);
     group.OOBReReplicate(FileName, where, (Action <string, MemoryMappedFile>)
                          delegate(string oobfname, MemoryMappedFile m) {
         Logger.Debug("Send OOB Finished finished for " + FileName);
         //Transfer is Complete Now do a Ordered Send, so that the File may be processed
         //This needs to be ordered, since the all Groups need to see this event in the same wat
         Transaction trn = FileServerComm.getInstance().transManager.getTransaction(oobfname);
         trn.signalTransactionEnd();
     });
 }