2012-05-25 2 views
2

Мне нужно сохранить определенные объекты ByteBuffer как статические поля в моих классах. Есть ли проблемы с хранением их как долгоживущих объектов или я должен их создавать по требованию? Мне часто нужен доступ к этим объектам.Может ByteBuffers использоваться как «долгоживущие» статические объекты?

+0

Возможно, вы в любое время используете аналогичное число в использовании? Если да, рассмотрели ли вы бассейн? –

+0

На самом деле это просто статические конечные константы, которые необходимы для собственных нужд приложения. –

ответ

1

Буферы не являются потокобезопасными. Если это многопоточное приложение, вам нужно проявлять особую заботу об этом. Существует подобная дискуссия здесь:

ByteBuffer as static final fields within classes

Если это так, мое предложение создать его динамически, как это поможет вам выделить память только для необходимых данных для operation.If вам бассейн и его данные, подлежащие чтению, будут меньше выделенных, тогда будет выделена ненужная память.

Надеюсь, это вам поможет.

+0

Мне нужны они только для чтения. –

+0

Я обновил свой ответ – UVM

+0

Меня не особо беспокоит объем памяти, так как это всего 4 байтовых целых числа, преобразованных в ByteBuffers. –

Смежные вопросы