use ConcurrentLinkedDeque instead of ConcurrentSkipListSet