ByteBuffers可以用作“长寿”静态对象吗?

时间:2012-05-25 04:51:41

标签: java

我需要将某些ByteBuffer对象存储为我的类中的静态字段。是否存在将它们存储为长寿命物品的问题,还是应该按需创建它们?我经常需要访问这些对象。

1 个答案:

答案 0 :(得分:1)

缓冲区不是线程安全的。因此,如果它是一个多线程应用程序,您需要特别注意它。这里有类似的讨论:

ByteBuffer as static final fields within classes

如果是这种情况我的建议就是动态创建它,因为它可以帮助你只为操作所需的数据分配内存。如果你集中它并且要读取的数据少于分配,那么不必要记忆将被分配。

希望这会对你有所帮助。