好的,所以我有一个使用的类,while(true)
它使用套接字连接。现在我的问题是,当我使用 socket_set_nonblock 它没有连接它时,它会以“无法连接。”而死。当我在发送数据包后放置它时,它会从头开始并重新完成所有操作。
这是我的连接功能:
function connect($ip, $port) {
if($this->soc!=null) socket_close($this->soc);
$this->soc = socket_create(AF_INET,SOCK_STREAM,SOL_TCP);
if(!$this->soc) die(socket_strerror(socket_last_error($this->soc)));
if(!socket_connect($this->soc,$ip,$port)) die("Could not connect.");
}
这是尝试使用 socket_set_nonblock 时的函数
function connect($ip, $port) {
if($this->soc!=null) socket_close($this->soc);
$this->soc = socket_create(AF_INET,SOCK_STREAM,SOL_TCP);
socket_set_nonblock($this->soc);
if(!$this->soc) die(socket_strerror(socket_last_error($this->soc)));
if(!socket_connect($this->soc,$ip,$port)) die("Could not connect.");
}