Как мне очистить мой демон? - PullRequest
4 голосов
/ 08 ноября 2011

Я использую локальный экземпляр HTTP :: Daemon , используя измененную версию структуры зацикливания, описанную в документации. Я сделал возможным выйти из цикла по запросу пользователя, но последующее выполнение моего Perl-скрипта выдает мне ошибку:

HTTP :: Daemon: адрес уже используется ... распространяется в / path / to / script строка NNN, строка 3.

Что еще я должен сделать, чтобы стать хорошим гражданином и привести себя в порядок после моего Демона?

1 Ответ

5 голосов
/ 08 ноября 2011

Скорее всего, ничего.Адрес используется оставшимися соединениями из предыдущего экземпляра.Как только все они будут закрыты, адрес будет автоматически освобожден.

Если вы хотите ускорить этот процесс, вы можете установить опцию сокета SO_REUSEADDR перед привязкой.Подробнее см. Документацию PERL socket .«если сервер умирает без незавершенных соединений, порт нельзя будет сразу же повторно использовать, если вы не используете опцию SO_REUSEADDR с помощью функции setsockopt ().»

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...