Coroutine\Client->connect

连接到远程服务器,函数原型:

bool $swoole_client->connect(string $host, int $port, float $timeout = 0.1)

connect方法接受4个参数:

原先异步客户端不支持recv超时,现在协程版已经支持超时,复用上面的$timeout参数

使用实例

connect不会发生阻塞,connect事件触发后,切回PHP上下文。

if ($cli->connect('127.0.0.1', 9501)) {
      $cli->send("data");
} else {
      echo "connect failed.";
}

如果连接失败,会返回false

超时后返回,检查$cli->errCode110

失败重试

connect连接失败后,不可直接进行重连。必须使用close关闭已有socket,然后再进行connect重试。

//连接失败
if ($cli->connect('127.0.0.1', 9501) == false) {
	//关闭已有socket
	$cli->close();
	//重试
	$cli->connect('127.0.0.1', 9501);
}