¿Su aplicación está impulsada por eventos? (Lo que significa que su ciclo principal incluye select()/epoll_wait()
llamar).
En una aplicación basada en eventos, puede bloquear todas las señales y desbloquearlas solo durante pselect()/epoll_pwait()
llamar. De esta manera, el resto de su código nunca tendrá que lidiar con EINTR.
Ver sigaction:http://pubs.opengroup.org/onlinepubs/009695399/functions/sigaction.html
SA_RESTART
This flag affects the behavior of interruptible functions; that is, those
specified to fail with errno set to EINTR. If set, and a function specified
as interruptible is interrupted by this signal, the function shall restart
and shall not fail with EINTR unless otherwise specified. If the flag is not
set, interruptible functions interrupted by this signal shall fail with errno
set to EINTR.
De forma predeterminada, tiene el comportamiento SA_RESTART, por lo que no tiene que preocuparse por EINTR si no juega con señales.