Unbounded FIFO queue with a wait() method. Adapted from pure Python implementation of queue.SimpleQueue.
SyncQueue(
self,
)Put the item on the queue.
The optional 'block' and 'timeout' arguments are ignored, as this method never blocks. They are provided for compatibility with the Queue class.
Remove and return an item from the queue.
If optional args 'block' is true and 'timeout' is None (the default), block if necessary until an item is available. If 'timeout' is a non-negative number, it blocks at most 'timeout' seconds and raises the Empty exception if no item was available within that time. Otherwise ('block' is false), return an item if one is immediately available, else raise the Empty exception ('timeout' is ignored in that case).
If queue is empty, wait until an item maybe is available, but don't consume it.
Return True if the queue is empty, False otherwise (not reliable!).
Return the approximate size of the queue (not reliable!).