Я запускаю сервер TNonblocking из одного потока:
void *start_server(void *) {
server->serve();
return NULL;
}
pthread_create(&daemon_thread, NULL, start_server, NULL);
и вызовите server->stop()
из основного потока, затем попытайтесь использовать pthread_join
, чтобы дождаться грациозного завершения фонового потока. Однако основной поток зависает при вызове pthread_join
.
Как я мог изящно завершить работу благотворительного сервера?