• 在什么情况下使用ArrayBlockingQueue更好,何时使用LinkedBlockingQueue更好?
  • 如果LinkedBlockingQueue的默认容量等于MAX Integer,将其用作具有默认容量的BlockingQueue真的有帮助吗?
  • 最佳答案

    ArrayBlockingQueue由一个数组支持,该数组的大小在创建后将永远不会改变。将容量设置为Integer.MAX_VALUE会创建一个大型数组,空间成本很高。ArrayBlockingQueue总是有界的。
    LinkedBlockingQueue动态创建节点,直到达到capacity。默认情况下,这是Integer.MAX_VALUE。使用如此大的容量不会增加空间成本。LinkedBlockingQueue是有界的。

    10-04 15:00