Looking for java Answers? Try Ask4KnowledgeBase
Looking for java Keywords? Try Ask4Keywords

Java Language Utilisation de base - Création d'un ByteBuffer


Exemple

Il existe deux manières de créer un ByteBuffer , où l’on peut subdiviser à nouveau.

Si vous avez un byte[] existant byte[] , vous pouvez l’ emballer dans un ByteBuffer pour simplifier le traitement:

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

Ce serait une possibilité pour le code qui gère les interactions de réseau de bas niveau


Si vous ne disposez pas d'un byte[] existant byte[] , vous pouvez créer un ByteBuffer sur un tableau spécifiquement alloué au tampon, comme ceci:

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

Si le chemin de code est extrêmement critique et que vous avez besoin d' un accès direct à la mémoire du système , le ByteBuffer peut même allouer des tampons directs à l' aide de #allocateDirect()