Anexando ArrayBuffers

Qual é a maneira preferível de anexar / combinar ArrayBuffers?

Estou recebendo e analisando pacotes de rede com uma variedade de estruturas de dados. As mensagens recebidas são lidas em ArrayBuffers. Se um pacote parcial chegar, preciso armazená-lo e aguardar a próxima mensagem antes de tentar analisá-lo novamente.

Atualmente estou fazendo algo assim:

function appendBuffer( buffer1, buffer2 ) {
  var tmp = new Uint8Array( buffer1.byteLength + buffer2.byteLength );
  tmp.set( new Uint8Array( buffer1 ), 0 );
  tmp.set( new Uint8Array( buffer2 ), buffer1.byteLength );
  return tmp.buffer;
}

Obviamente você não pode ter que criar um novo buffer como ArrayBuffers são de comprimento fixo, mas é necessário inicializar matrizes digitadas? Na chegada eu só quero é ser capaz de tratar os buffers como buffers; tipos e estruturas não são preocupantes.

questionAnswers(3)

yourAnswerToTheQuestion