Queue asynchronous operations for serial execution with optional completion callbacks. At any point the queue can be cancelled. When cancelled, the queue will a) wait for any pending operation to complete and b) fire the callbacks of all other pending jobs, indicating that they were cancelled. Any new operation added to a cancelled queue will also receive an asynchronous callback indicating that it was cancelled.
Create a new operation queue.
fn, optionally calling
cb on completion.
fn will receive a single callback as an argument that you must call to indicate that the opearation is complete; any arguments will be forwarded to your own callback.
Close the queue, optionally calling
cb when the close operation is complete, by first waiting for any in-progress operation to complete. Any further remaining items in the queue will have their callbacks invoked with the value