added lock free queue for single producer and consumer