#### 25.2.4 Asynchronous I/O Signals ¶

The signals listed in this section are used in conjunction with asynchronous I/O facilities. You have to take explicit action by calling `fcntl` to enable a particular file descriptor to generate these signals (see Interrupt-Driven Input). The default action for these signals is to ignore them.

Macro: `int` SIGIO ¶

  This signal is sent when a file descriptor is ready to perform input or output.

  On most operating systems, terminals and sockets are the only kinds of files that can generate `SIGIO`; other kinds, including ordinary files, never generate `SIGIO` even if you ask them to.

  On GNU systems `SIGIO` will always be generated properly if you successfully set asynchronous mode with `fcntl`.

Macro: `int` SIGURG ¶

  This signal is sent when “urgent” or out-of-band data arrives on a socket. See Out-of-Band Data.

Macro: `int` SIGPOLL ¶

  This is a System V signal name, more or less similar to `SIGIO`. It is defined only for compatibility.