开发者社区 问答 正文

为什么 Executors 创建线程池有可能会发生OOM

为什么 Java开发手册上说 Executors 创建线程池有可能会发生OOM

展开
收起
一人吃饱,全家不饿 2020-12-27 18:47:13 1521 分享 版权
1 条回答
写回答
取消 提交回答
  • Executors 底层是通过 LinkedBlockingQueue 实现的,LinkedBlockingQueue 是一个用链表实现的有界阻塞队列,容量不设置的话,将是一个无边界的阻塞队列,最大长度为 Integer.MAX_VALUE。 对于一个无边界队列来说,是可以不断的向队列中加入任务的,这种情况下就有可能因为任务过多而导致内存溢出问题。

    2020-12-28 12:02:48
    赞同 1 展开评论
问答分类:
问答标签:
问答地址: