SIGPOLL

Материал из Википедии — свободной энциклопедии
Перейти к навигацииПерейти к поиску
SIGPOLL
ОписаниеСигнал асинхронноговвода-вывода
По умолчаниюзавершение процесса
КодыSA_SIGINFO
POLL_INдоступен ввод
POLL_OUTвозможен вывод
POLL_MSGдоступно новое сообщение
POLL_ERRошибка ввода-вывода
POLL_PRIвысокоприоритетный ввод
POLL_HUPсоединение закрыто

ВPOSIX-системахSIGPOLL —сигнал, посылаемый процессу для информирования об изменении состояния выполняющегося в фоне асинхронного ввода-вывода.

SIGPOLL — целочисленная константа, определенная в заголовочном файлеsignal.h. Символьные имена сигналов используются вместо номеров, так как в разных реализациях номера сигналов могут различаться.

СигналSIGIO вLinux является синонимомSIGPOLL.

Этимология

[править |править код]

SIG — общийпрефикс сигналов (отангл. signal),POLL — сокращенное написаниеангл. polling — опрос, в контексте системного вызоваpoll,IO — сокращениеангл. I/O (input-output) — ввод-вывод.

Использование

[править |править код]

Согласно POSIX, SIGPOLL — сигнал по умолчанию, посылаемый при изменении состояния открытого файла (например, готовности к вводу или выводу), для которого системным вызовомioctl был установлен флаг I_SETSIG. Используя этот механизм, программа может осуществлять асинхронный ввод-вывод без необходимости дополнительного мультиплексирования, которое необходимо при использовании функцииselect(). Возможным минусом данного метода является потеря непрерывности в коде программы и превращения его в нечитабельное«спагетти», с потенциальной возможностью возникновения ошибок типаrace condition.

POSIX 1003.1 (2003 год) рекомендует использование стандартизированных системных вызовов для асинхронного ввода-вывода, определяемых заголовочным файломaio.h. Всем запросы на ввод-вывод с использованием этих функций ставятся в очередь для асинхронного выполнения, их результаты и состояние могут быть получены через функцииaio_return() иaio_error().

Перейти к шаблону «Сигналы»
Некоторые сигналы, не включённые в POSIX, и синонимы
Информация должна бытьпроверяема, иначе она может быть удалена. Вы можетеотредактировать статью, добавив ссылки наавторитетные источники в видесносок.(7 июня 2019)
Источник —https://ru.wikipedia.org/w/index.php?title=SIGPOLL&oldid=100285948
Категория:
Скрытые категории: