Exemplo n.º 1
0
 def acquire(self, blocking=True):
     if self.value.value > 0:
         self.value.value -= 1
         return True
     else:
         if blocking:
             lockless.retry()
         else:
             return False
Exemplo n.º 2
0
def wait_till_complete(v, n):
    if v.value != n:
        lockless.retry()
Exemplo n.º 3
0
 def get(self):
     if len(self.obj.value) == 0:
         lockless.retry()
     else:
         return self.obj.value.pop(0)
Exemplo n.º 4
0
def wait_till_complete(v, n):
    if v.value != n:
        lockless.retry()
Exemplo n.º 5
0
 def get(self):
     if len(self.obj.value) == 0:
         lockless.retry()
     else:
         return self.obj.value.pop(0)
Exemplo n.º 6
0
 def pickup(self):
     if self.available.value == 0:
         lockless.retry()
     else:
         self.available.value = 0
Exemplo n.º 7
0
 def pickup(self):
     if self.available.value == 0:
         lockless.retry()
     else:
         self.available.value = 0