синхронное мультиплексирование ввода / вывода (synchronous I/O multiplexing)
Возвращаемое значение (Return value)
Upon successful completion, the pselect() and select() functions
shall return the total number of bits set in the bit masks.
Otherwise, -1 shall be returned, and errno shall be set to
indicate the error.
FD_CLR(), FD_SET(), and FD_ZERO() do not return a value.
FD_ISSET() shall return a non-zero value if the bit for the file
descriptor fd is set in the file descriptor set pointed to by
fdset, and 0 otherwise.