Create a new BlockingQueue
BlockingQueue options
Gets an element when one is ready, waits if none are ready.
Element or undefined if queue is empty and done has been called
Indicate that no more items will be enqueued.
This releases all readers blocked on enqueue
Add an item to the queue, wait if the queue is full.
Element to add
enqueueblocks when the queue is full, until an item is read withdequeue, or donedequeueblocks when the queue is empty, until an item is added withenqueue, or donedonemust be called when no more items will be addeddequeuereturnsundefinedthere are no more items and processing is complete