Pops data from the queue. If queue is empty, this function blocks until data becomes available.
This function must be called while holding the queue's lock.
data from the queue.
Pops data from the queue. If queue is empty, this function blocks until data becomes available.
This function must be called while holding the queue's lock.