Перезапустите Poco HTTP-сервер

Я реализовал HTTP-сервер, используя Poco-библиотеки.
Он запускает службу REST и все работает нормально.

HTTP-сервер работает как демон в системе Linux.

Теперь я хочу внедрить функциональность в службу REST, которая перезапускает самого демона HTTP-сервера.

я использую popen вызвать команду оболочки для перезапуска демона. Демон перезапускается, и я вижу через netstat -plten а также ps -aux что сервер получает новый pid и прослушивает порт 80. Но он не обрабатывает любые входящие запросы HTTP.

Если я наберу команду оболочки непосредственно в терминале, демон перезапустится, получит новый pid и обработает входящие HTTP-запросы.

Что может быть не так?

РЕДАКТИРОВАТЬ

Я также попытался вызвать команду оболочки с system(command); а также std::thread(std::system,command).detach(); но результат тот же.

0

Решение

Я нашел решение.

При создании Poco::Net::HTTPServerЯ создаю Poco::Net::ServerSocket согласиться с этим. Мне нужно закрыть этот сокет перед перезапуском демона.

0

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector