Является ли websockets / ws send () синхронным? - PullRequest
0 голосов
/ 13 января 2019

Я отправляю двоичные данные, используя узлы собственного класса Buffer. Я выделяю только один буфер и перезаписываю его данные новыми данными и отправляю клиентам. Это случается много раз за короткий промежуток времени, поэтому меня беспокоит то, что если безопасно использовать общий буфер или данные в нем могут быть перезаписаны перед отправкой клиенту, если в качестве примера отправка не удалась, и пакет должен быть повторно отправлен, или если что-то не синхронные и внутренние функции библиотеки не копируют данные в свои переменные до того, как происходит фактическая отправка, а мой код уже изменил буфер со следующими данными?

Вот функция отправки: https://github.com/websockets/ws/blob/master/lib/sender.js#L267

В строке 73 это выглядит как копирование данных, но я не совсем уверен в части this.dispatch и this.enqueue в конце функции send.

...