Пример #1
0
 def test_empty(self):
     """测试empty()"""
     queue_empty = RedisQueue("queue_empty_" + self.key_rand)
     self.keys.append(queue_empty.key)
     self.del_key(queue_empty.key)
     self.assertTrue(queue_empty.empty())
     queue_empty.put("empty")
     self.assertFalse(queue_empty.empty())
Пример #2
0
import threading
import time


class PutThread(threading.Thread):
    def __init__(self, flag, *args, **kwargs):
        threading.Thread.__init__(self, *args, **kwargs)
        self.q = RedisQueue('test')
        self.flag = flag

    def run(self):
        if self.q.lock(30):
            for i in range(10):
                time.sleep(0.001)
                self.q.put(self.flag + '_' + str(i))
            self.q.unlock()
        else:
            print('locked')


if __name__ == '__main__':
    for i in range(50):
        t = PutThread(daemon=True, flag=str(i))
        t.start()
        time.sleep(0.01)

    q = RedisQueue('test')
    time.sleep(5)
    while not q.empty():
        print(q.get())