Добрый день Есть программы с примерно такой структурой (упрощенно): bind() pool = create_thread_pool() while (slaveSocket = accept()) pool.serve(slaveSocket) Нужно уметь прервать главный цикл. Все осложняется тем что bind/accept и прочие это не просто bsd сокеты, а всякие wrapper'ы из gSOAP (т.е. soap_accept и т.д.). Из чего-то по теме нашел только soap_poll(). Соотв. вопрос: Насколько неправильным является решение: bind() set_accept_timeout(3s) pool = create_thread_pool() while (slaveSocket = accept()) if not_valid(slaveSocket) and should_stop return pool.serve(slaveSocket) Если оно является неправильным, то почему? Какие наихудщие вещи могут происходить в этом случае? Как может выглядеть альтернатива?
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.
Похожие темы
- Форум Консольный обмен сообщениями (2017)
- Форум передача списка процессов сервера клиенту (2015)
- Форум Сокеты, Передача данных, C/C++ (2006)
- Форум Пример программы UDP-сервера (2014)
- Форум Порт не освобождается после закрытия приложения (2017)
- Форум Сервер на СИ (2015)
- Форум Accept (2002)
- Форум Клиент-Сервер Socket linux (Система обмена сообщениями) (2014)
- Форум прерывания (2008)
- Форум Прерывание (2003)