// returns false if queue was full bool tryPut(T t){ if (queue.bounded_push(t)) { ready.signal(); return true; } return false; }
void putWithoutSignal(T t) { while (!queue.bounded_push(t)); }
void bProduce(int x) { bQ.bounded_push(x); }