def __timedWaitForLock(self, timeout):
     glogger.debug(self.clientId + " started waiting for " + str(timeout) +
                   " seconds for lock to be free")
     elapsedWaitingTime = 0
     done = False
     timeExpired = False
     while not done:
         waitPeriod = min(3, timeout - elapsedWaitingTime)
         if waitPeriod <= 0:
             waitPeriod = 0
         utilities.runCommand("sleep " + str(waitPeriod))
         elapsedWaitingTime = elapsedWaitingTime + waitPeriod
         if elapsedWaitingTime >= timeout:
             timeExpired = True
             done = True
         else:
             glogger.debug("lock is not free. " + self.clientId +
                           " trying again")
             start = time.time()
             done = self.__isLockFree()
             end = time.time()
             delay = int(end - start)
             elapsedWaitingTime += delay
     if not timeExpired:
         glogger.debug(self.clientId +
                       " found the lock free after waiting for " +
                       str(elapsedWaitingTime) + " seconds")
     return timeExpired, elapsedWaitingTime
Beispiel #2
0
 def __waitForLockInfinitely(self):
     glogger.debug(self.clientId + " started waiting infinitely for lock to be free")
     waitPeriod = 3
     done = False
     while not done:
         utilities.runCommand("sleep " + str(waitPeriod))
         glogger.debug("lock is not free trying again for " + self.clientId)
         done = self.__isLockFree()
     glogger.debug(self.clientId + " found the lock free")
     return 0
 def __waitForLockInfinitely(self):
     glogger.debug(self.clientId +
                   " started waiting infinitely for lock to be free")
     waitPeriod = 3
     done = False
     while not done:
         utilities.runCommand("sleep " + str(waitPeriod))
         glogger.debug("lock is not free trying again for " + self.clientId)
         done = self.__isLockFree()
     glogger.debug(self.clientId + " found the lock free")
     return 0
Beispiel #4
0
 def __timedWaitForLock(self, timeout):
     glogger.debug(self.clientId + " started waiting for " + str(timeout) + " seconds for lock to be free")
     elapsedWaitingTime = 0
     done = False
     timeExpired = False
     while not done:
         waitPeriod = min(3, timeout - elapsedWaitingTime)
         if waitPeriod <= 0:
             waitPeriod = 0
         utilities.runCommand("sleep " + str(waitPeriod))
         elapsedWaitingTime = elapsedWaitingTime + waitPeriod
         if elapsedWaitingTime >= timeout:
             timeExpired = True
             done = True
         else:
             glogger.debug("lock is not free. " + self.clientId + " trying again")
             start = time.time()
             done = self.__isLockFree()
             end = time.time()
             delay = int(end-start)
             elapsedWaitingTime += delay
     if not timeExpired:
         glogger.debug(self.clientId + " found the lock free after waiting for " + str(elapsedWaitingTime) + " seconds")
     return timeExpired,elapsedWaitingTime