我没有看到在apache的公共区域中获取有界缓冲区的最大容量的方法?具体来说,我正在使用BoundedFifoBuffer。你如何查询它的容量?
答案 0 :(得分:2)
您必须指定构造函数的大小。如果未指定大小,则为32。
快速浏览源代码表明,指定大小的大小没有限制(int
必须为<= Integer.MAX_VALUE = 2^31-1
的限制除外)。构造函数中唯一的检查是大小为> 0
。
您可以分配的可用内存量也有实际限制。
目前尚不清楚为什么,但确实没有查询缓冲区容量的方法。 (大概如果你在容量上添加了无知的元素,你应该抓住BufferOverflowException
来检测你何时达到容量。)
答案 1 :(得分:0)
你做不到。您只能在对象构造中指定它的大小。