Функции PHP »»» Функции для работы с сокетами (Socket Functions)(PHP 4 >= 4.1.0)
socket_listen - прослушивает соединение на сокете.
Описание
bool socket_listen (resource socket [, int backlog])
Предупреждение! |
---|
Эта функция - ЭКСПЕРИМЕНТАЛЬНАЯ. Поведение, имя и всё остальное, что задокументировано для данной функции может быть изменено в будущих релизах РНР без предупреждения. Вы можете использовать эту функцию только на свой страх и риск. |
После того как сокет socket создан с помощью socket_create() и связан с именем с помощью
socket_bind(), он может прослушивать входящие соединения в сокете socket.
Для процессинга в очередь ставится максимум backlog соединений. Если запрос соединения достигает заполненной очереди, клиент может
получить ошибку с указанием
ECONNREFUSED или, если протокол допускает ретрансмиссию, запрос может быть проигнорирован,
поэтому возможны повторные попытки.
Примечание:
максимальное количество, передаваемое в параметр backlog, сильно зависит от платформы. В linux оно втихую обрезается до SOMAXCONN. В win32, если передано SOMAXCONN, провайдер сервиса отвечает за установку backlog сокета в максимальное
разумное значение. На этой платформе нет стандарта для установки
реального backlog-значения.
socket_listen() применяется только для сокетов типа SOCK_STREAM или
SOCK_SEQPACKET.
Возвращает TRUE при успехе, FALSE при неудаче. Код ошибки можно запросить функцией
socket_last_error(). Этот код может быть передан в
socket_strerror() для получения текстового объяснения ошибки.
См. также
socket_accept(),
socket_bind(),
socket_connect(),
socket_create() и
socket_strerror().