#90 ByteStreamer#append

已關閉
ranides4 年之前創建 · 1 條評論
ranides commented 4 年之前

We could try to avoid allocating new array if there is enough space in current buffer.

Current "pending" fragment can be moved to the begin of the "array". New data could be copied after it.

In fact, it won't change almost anything except:

  • conditional allocation
  • storing additional field: "array_length" (which could be smaller than array.length)
We could try to avoid allocating new array if there is enough space in current buffer. Current "pending" fragment can be moved to the begin of the "array". New data could be copied after it. In fact, it won't change almost anything except: - conditional allocation - storing additional field: "array_length" (which could be smaller than array.length)
ranides commented 4 年之前
所有者
this.array_size = pending + input.length;
byte[] appended = this.array_size > array.length ? new byte[alloc] : array;
``` this.array_size = pending + input.length; byte[] appended = this.array_size > array.length ? new byte[alloc] : array; ```
ranides3 年之前 關閉
ranides 在代碼提交 3 年之前 中引用了該問題
Sign in to join this conversation.
未選擇里程碑
未指派成員
1 參與者
正在加載...
取消
保存
尚未有任何內容