• Process\Pool->listen
    • 参数
    • 返回值
    • 通信协议
    • 实例

    Process\Pool->listen

    监听SOCKET,必须在$ipc_modeSWOOLE_IPC_SOCKET时才能使用。

    1. function Process\Pool::listen(string $host, int $port = 0, int $backlog = 2048);

    参数

    • $host监听的地址,支持TCPUnixSocket两种类型。127.0.0.1表示监听TCP地址,需要指定$portunix:/tmp/php.sock监听UnixSocket地址。
    • $port监听的端口,在TCP模式下需要指定。
    • $backlog监听的队列长度

    返回值

    • 成功监听返回true
    • 监听失败返回false,可调用swoole_errno获取错误码。监听失败后,调用start时会立即返回false

    通信协议

    向监听端口发送数据时,客户端必须在请求前增加4字节、网络字节序的长度值。协议格式为:

    1. packet = htonl(strlen(data)) + data;

    实例

    1. $pool->listen('127.0.0.1', 8089);
    2. $pool->listen('unix:/tmp/php.sock');