Я нашел сервер по select()
, который я хочу получить от некоторых клиентов.
Но я обнаружил, что сервер будет заблокирован в read()
с помощью gdb.
Поэтому я решил решить эту проблему, добавив SIGALRM
, но когда происходит тайм-аут, он все равно блокируется в read()
.
Это происходит потому, что системные вызовы автоматически перезапускаются, read()
не прерывается при возврате обработчика сигнала SIGALRM.
Верна ли эта интерпретация?