Atomic nonblocking lock-free and wait-free FIFO implementation