Является ли websockets/ws send() синхронным?

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

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

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

0 ответов

Другие вопросы по тегам