Можно ли вызывать syscall-ы из обработчика сигнала?
От: Аноним  
Дата: 11.10.13 14:09
Оценка:
subj
Re: Можно ли вызывать syscall-ы из обработчика сигнала?
От: Pzz Россия https://github.com/alexpevzner
Дата: 11.10.13 14:49
Оценка:
Здравствуйте, Аноним, Вы писали:

А>subj


Да.
Re: Можно ли вызывать syscall-ы из обработчика сигнала?
От: andrey.desman  
Дата: 11.10.13 19:47
Оценка:
Здравствуйте, Аноним, Вы писали:

А>subj


Да, но далеко не все. Даже из libc большинство вызывать нельзя.
Гугли async signal safe functions.

Если у тебя есть poll loop, то на линуксе используй signalfd,а на остальных можно сигнал самому загонять в пайп из обработчика сигнала.
Re: Можно ли вызывать syscall-ы из обработчика сигнала?
От: ДимДимыч Украина http://klug.org.ua
Дата: 17.10.13 21:36
Оценка:
Что можно вызывать из обработчика описывается POSIX'ом, а он не различает системные вызовы и библиотечные функции. Перечень безопасных функций приведен в man 7 signal.
Если речь конкретно о системных вызовах в Linux, то думаю, конкретного ответа не будет.
Обязательно бахнем! И не раз. Весь мир в труху! Но потом. (ДМБ)
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.