Please consider adding a WAIT, or similar, method to the QUEUE class which would wait for something to appear in the queue object before execution would proceed. The user could also specify an optional timeout in milliseconds to wait. If not specified the method would wait indefinitely.
A results of .true could be returned if something showed up in the queue and .false could be returned if the wait timeout expired without something being placed in the queue.
While this would be very nice, the same effect can be accomplished with semaphores. Thank you for your consideration! -Mark