Как запустить 2 потока?
class Queue(object):
def __init__(self,size =5):
self._size = size
self._queue = []
self._mutex = threading.RLock()
self._empty = threading.Condition(self._mutex)
self._full = threading.Condition(self._mutex)
def get(self):
with self._empty:
if len(self._queue) == 0 :
self._empty.wait()
c = self._queue.pop(0)
self._full.notify()
return c
def put(self,val):
with self._full:
if len(self._queue) >= self._size:
self._full.wait()
self._queue.append(val)
self._empty.notify()
вожу 5 раз Queue.put('что-нибудь') и потом все блокируется. Писать в консоль могу, я вот выполнить код уже нет.
Каким образом я могу выполнить Queue.get(), чтобы self._full проснулся и проверил условие?