|
ru.unix- RU.UNIX ---------------------------------------------------------------------- From : Andrei M. Zaparii 2:5020/400 28 Mar 2000 19:07:36 To : All Subject : Обработка сигналов -------------------------------------------------------------------------------- Доброго времени суток Всем! Может здесь кто мне бедному поможет :-) 1. Программа ловит SIGSEGV ежели пытается сделать endwin (имеется в виду функция из ncurses) внутри обработчика сигнала. Почему? Можно ли вообще изменять настройки терминала из обработчика сигнала? 2. Делаю: struct sigaction act, old; act.sa_handler = имяфункции; act.sa_mask = 0; act.sa_flags = SA_RESTART; sigaction(SIGINT, &act, &old); возвращает 0, что согласно ману означает успешную установку обработчика сигнала. После посылки SIGINT программа вываливается, а управление обработчику не передаётся. Проверял и в gdb, и при помощи всяких отладочных дырок. Почему sigaction может себя так вести? signal ту же функцию нормально устанавливает, полсе чего, при получении SIGINT, управление передаётся в функцию-обработчик. С наилучшими, Андрей --- ifmail v.2.15dev4 * Origin: Guess whooooo? (2:5020/400) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.unix/8801f1f69500.html, оценка из 5, голосов 10
|