Michael and Scott lock-free, single-ended queues.
This is a straightforward implementation of classic Michael & Scott Queues. Pseudocode for this algorithm can be found here:
Is the queue currently empty? Beware that this can be a highly transient state.
Push a new element onto the queue. Because the queue can grow, this always succeeds.