queue: always wait can_dequeue if wait flag is true