Executors中的数据结构

时间:2014-12-15 14:22:30

标签: java concurrency executorservice executors

我们可以在定义ThreadPoolExecutors时提供BlockingQueue实现。但是,如果我使用工厂(Executors)创建单个线程池,如下所示,我想知道使用哪个阻塞队列。我猜这是一个LinkedBlockingQueue。该文档讨论了无界队列,但没有揭示实现。

ExectorService service = Executors.newSingleThreadExecutor();

1 个答案:

答案 0 :(得分:1)

这是来自Executors src:

public static ExecutorService newSingleThreadExecutor() {
    return new FinalizableDelegatedExecutorService
        (new ThreadPoolExecutor(1, 1,
                                0L, TimeUnit.MILLISECONDS,
                                new LinkedBlockingQueue<Runnable>()));
}