Replacing ConcurrentLinkedQueue with ArrayDeque

We won't have any concurrency issue here since it's in a thread local