Example #1
0
 def routineTrylock(key):
     l = Lock(key, rc.scheduler)
     locked = l.trylock()
     result.append(locked)
     for m in rc.waitWithTimeout(0.5):
         yield m
     l.unlock()
Example #2
0
 def routineTrylock(key):
     l = Lock(key, rc.scheduler)
     locked = l.trylock()
     result.append(locked)
     for m in rc.waitWithTimeout(0.5):
         yield m
     l.unlock()
Example #3
0
 async def routineLock(key):
     l = Lock(key, rc.scheduler)
     locked = l.beginlock(rc)
     if not locked:
         await rc.wait_with_timeout(0.2)
         locked = l.trylock()
         if not locked:
             raise ValueError('Not locked')
     t = obj[0]
     await rc.do_events()
     obj[0] = t + 1
     l.unlock()
     await rc.do_events()
     await l.lock(rc)
     t = obj[0]
     await rc.do_events()
     obj[0] = t + 1
     l.unlock()
Example #4
0
 def routineLock(key):
     l = Lock(key, rc.scheduler)
     locked = l.beginlock(rc)
     if not locked:
         for m in rc.waitWithTimeout(1.0):
             yield m
         locked = l.trylock()
         if not locked:
             raise ValueError('Not locked')
     t = obj[0]
     for m in rc.waitWithTimeout(0.5):
         yield m
     obj[0] = t + 1
     l.unlock()
     for m in rc.doEvents():
         yield m
     for m in l.lock(rc):
         yield m
     t = obj[0]
     for m in rc.waitWithTimeout(1.0):
         yield m
     obj[0] = t + 1
     l.unlock()
Example #5
0
 def routineLock(key):
     l = Lock(key, rc.scheduler)
     locked = l.beginlock(rc)
     if not locked:
         for m in rc.waitWithTimeout(1.0):
             yield m
         locked = l.trylock()
         if not locked:
             raise ValueError('Not locked')
     t = obj[0]
     for m in rc.waitWithTimeout(0.5):
         yield m
     obj[0] = t + 1
     l.unlock()
     for m in rc.doEvents():
         yield m
     for m in l.lock(rc):
         yield m
     t = obj[0]
     for m in rc.waitWithTimeout(1.0):
         yield m
     obj[0] = t + 1
     l.unlock()
Example #6
0
 async def routineTrylock(key):
     l = Lock(key, rc.scheduler)
     locked = l.trylock()
     result.append(locked)
     await rc.do_events()
     l.unlock()