我正在为我的threadPool使用LinkedBlockingQueue
new ThreadPoolExecutor(20,
21,
10,
TimeUnit.SECONDS,
new LinkedBlockingQueue<Runnable>())
我还遭受了内存泄漏Bug (内存中充满了LinkedBlockingQueue节点,逐渐变慢)的问题,这个问题在JDK7中得到了修复。
我现在不想改变运行时环境或我的JDK。
与BlockingQueue接口的其他实现不同,LinkedBlockingQueue没有大小限制。你能推荐其他可选的队列吗?
发布于 2013-01-09 20:39:14
你链接到的bug-id修复也已经移植到Java6了。自从Java6Update19以来,它已经在Java6中被修复了,请参阅http://bugs.sun.com/view_bug.do?bug_id=2186685 (这个链接在你提到的bug上是BTW链接)。
发布于 2013-01-09 20:38:34
由固定大小的数组支持的ArrayBlockingQueue
。
PriorityBlockingQueue
-它是一个无界阻塞,在这里,优先级队列的元素根据它们的自然顺序进行排序,或者通过队列构造时提供的比较器进行排序。
https://stackoverflow.com/questions/14235354
复制相似问题