Я пытаюсь "очистить" ByteBuffer
так, чтобы он содержал все нулевые байты (все 0x00
). Я попытался перебрать все позиции в буфере и установить для них 0x00
, но эффективность плохая. Есть ли лучший способ быстро очистить ByteBuffer
- аналогично тому, что делает BitSet.clear()
?
Обратите внимание, что ByteBuffer.clear()
не является подходящим решением для меня в этом сценарии — мне нужно стереть все данные внутри буфера, а не просто сбросить указатель на начало .
Есть намеки?
Изменить: ByteBuffer используется как часть хэш-таблицы и поддерживает ссылки на записи хэш-таблицы. Каждый раз, когда хеш-таблицу нужно очистить, мне приходится сбрасывать записи хеш-таблицы для последующей вставки хеш-таблицы. Поскольку доступ к хеш-таблице осуществляется случайным образом, я не могу просто очистить() состояние байтового буфера.