socket_set_nonblock
(PHP 4 >= 4.1.0, PHP 5, PHP 7, PHP 8)
socket_set_nonblock — Устанавливает неблокирующий режим для файлового дескриптора fd
Описание
function socket_set_nonblock(
Socket $socket):
bool
Когда операция (например, получение, отправка, соединение, принятие соединения,… выполняется
на неблокирующем сокете, скрипт не будет приостанавливать исполнение до получения сигнала
или возможности выполнить операцию. Если выполняемая операция должна привести к блокированию
выполнения скрипта, то вместо этого вызываемая функция вернёт ошибку.
Возвращаемые значения
Функция возвращает true, если выполнилась успешно, или false, если возникла ошибка.
Примеры
Пример #1 Пример использования функции socket_set_nonblock()
<?php
$socket = socket_create_listen(1223);
socket_set_nonblock($socket);
socket_accept($socket);
?>
Пример создаёт слушающий сокет на всех интерфейсах на порту 1223
и устанавливает сокет в режим O_NONBLOCK.
Функция socket_accept() немедленно вернёт ошибку,
если только именно в этот момент нету ожидающего соединения.