Определите, какой сигнал вызвал EINTRC++

Программы на C++. Форум разработчиков
Anonymous
Определите, какой сигнал вызвал EINTR

Сообщение Anonymous »

Я запускаю цикл epoll, и иногда мой вызов epoll_wait возвращает -1, а для errno установлено значение EINTR. Иногда я хочу, чтобы это завершило цикл epoll, как в случае SIGTERM или SIGINT. Но у меня этот код скомпилирован с флагом -pg, поэтому периодически возникают сигналы SIGPROF (27), которые останавливают мой цикл.

Итак... можно ли включить сигнализацию, чтобы я мог определить, когда выйти, а когда продолжить? Я хотел бы избежать всего, что использует глобальное использование для отслеживания самого последнего поданного сигнала.

Подробнее здесь: https://stackoverflow.com/questions/199 ... used-eintr

Вернуться в «C++»