我正在使用节点自己的Buffer类发送二进制数据。我只分配一个缓冲区,每次都用新数据覆盖其数据,然后将其发送给客户端。这种情况在很短的时间范围内发生了很多次,所以我担心的是,如果安全使用共享缓冲区,或者在发送给客户端之前,其中的数据是否会被覆盖,例如发送失败并且需要重新发送数据包,或者不是同步的,并且库内部函数不会在实际发送发生之前将数据复制到其自己的变量中,并且我的代码已经用下一个数据修改了缓冲区?
这是发送功能: https://github.com/websockets/ws/blob/master/lib/sender.js#L267
在第73行,它看起来像是它的复制数据,但是我不太确定send函数末尾的this.dispatch和this.enqueue部分。