2013-08-29 4 views
2

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

Я просто хочу получить более подробную информацию по этому вопросу. Любая информация приветствуется.

+0

Сигналы более грубые и более инвазивные, чем события. Программы GUI обычно имеют основной цикл, который реагирует на события - как в WinAPI, так и в X11. –

+0

Я отредактировал, пожалуйста, поправьте меня @Jonathan Leffler. –

ответ

0

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

Обработчики событий заботятся о событиях, внешних по отношению к программе, таких как прерывание клавиатуры, щелчок мыши и т. Д. Обработчики событий будут непрерывно опроса в определенном слоте для события. Таким образом, здесь он может потреблять жизненные циклы процессора.

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

Пожалуйста, исправьте меня, если не заголовок правильного пути.

Смежные вопросы