socket_listen
(PHP 4 >= 4.1.0, PHP 5, PHP 7)
socket_listen — Прослушивает входящие соединения на сокете
Описание
$socket
, int $backlog
= 0
) : bool
После того, как сокет socket
был создан
при помощи функции socket_create() и привязан к имени при помощи
функции socket_bind(), ему можно указать слушать входящие
соединения на сокете socket
.
Функция socket_listen() применима только к сокетам
типа SOCK_STREAM
или SOCK_SEQPACKET
.
Список параметров
-
socket
-
Действительный ресурс сокета, созданный при помощи функций socket_create() или socket_addrinfo_bind().
-
backlog
-
Максимум
backlog
входящих соединений будет помещено в очередь на обработку. Если запрос на соединение придет, когда очередь заполнена, клиент может получить ошибкуECONNREFUSED
, или, если базовый протокол позволяет повторную передачу, запрос будет повторен.Замечание:
Максимальное значение параметра
backlog
очень сильно зависит используемой платформы. В Linux очень большое значение будет молча обрезано доSOMAXCONN
. В win32, если переданоSOMAXCONN
, базовый провайдер сервиса, ответственного за сокет, установит этот параметр максимальным разумным значением. Нет стандартного способа узнать актуальное значение "backlog" для этой платформы.
Возвращаемые значения
Возвращает true
в случае успешного завершения или false
в случае возникновения ошибки. Код ошибки может быть получен при помощи функции
socket_last_error(). Этот код может быть передан функции
socket_strerror() для получения текстового описания
ошибки.
Смотрите также
- socket_accept() - Принимает соединение на сокете
- socket_bind() - Привязывает имя к сокету
- socket_connect() - Начинает соединение с сокетом
- socket_create() - Создаёт сокет (конечную точку для обмена информацией)
- socket_strerror() - Возвращает строку, описывающую ошибку сокета
- socket_addrinfo_bind() - Создать и привязать к сокету из указанного addrinfo