Sirian
@Sirian

Node.JS: Повторное использование сокетов

Пытаюсь запустить такой скрипт:
require('net').createServer().listen('/tmp/test');


затем завершить его, и запустить еще раз, то вылетит ошибка:
Error: listen EADDRINUSE

Как заставить node.js повторно использовать сокеты? (и для локальных сокетов и для tcp сокетов)
  • Вопрос задан
  • 3792 просмотра
Пригласить эксперта
Ответы на вопрос 1
Из-за TIME_WAIT bind() на сокет может возвращать EADDRINUSE в течении еще 2-4 минут. Вообще node не должна обращать на это внимания, т.к. все сокеты открываются с SO_REUSEADDR.

В Вашем случае можно посоветовать делать сначала require('fs').unlink('/tmp/test');
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы