Looking for java Keywords? Try Ask4Keywords

Java Language Основное использование - создание ByteBuffer


пример

Существует два способа создания ByteBuffer , где можно снова подразделить.

Если у вас уже есть byte[] , вы можете «обернуть» его в ByteBuffer чтобы упростить обработку:

byte[] reqBuffer = new byte[BUFFER_SIZE];
int readBytes = socketInputStream.read(reqBuffer);
final ByteBuffer reqBufferWrapper = ByteBuffer.wrap(reqBuffer);

Это будет возможность для кода, который обрабатывает сетевые взаимодействия на низком уровне


Если у вас нет уже существующего byte[] , вы можете создать ByteBuffer над массивом, специально выделенным для буфера следующим образом:

final ByteBuffer respBuffer = ByteBuffer.allocate(RESPONSE_BUFFER_SIZE);
putResponseData(respBuffer);
socketOutputStream.write(respBuffer.array());

Если код-путь чрезвычайно критичен по производительности и вам нужен прямой доступ к системной памяти , ByteBuffer может даже выделять прямые буферы с помощью #allocateDirect()