Проблема с закрытием клиентского сокета в php - PullRequest
1 голос
/ 09 марта 2019

Я пытался написать проект PHP для связи с ПЛК, но у меня есть проблема, когда я закрываю клиент сокета, он закрывался не сразу, количество подключенных устройств увеличивается, когда я вызываю функцию AJAX для перезагрузки значений, может кто-нибудь Помоги мне? Я использую RS_sim для имитации ПЛК

моя страница

Мой код для создания и закрытия клиента сокета:

private function connect(){
// Create a protocol specific socket
if ($this->socket_protocol == "TCP"){
    // TCP socket
    $this->sock = socket_create(AF_INET, SOCK_STREAM, SOL_TCP);
} 

$result = @socket_connect($this->sock, $this->host, $this->port);
if ($result === false) {
    throw new Exception("socket_connect() failed.</br>Reason: ($result)".
        socket_strerror(socket_last_error($this->sock)));
} else {
    $this->status .= "Connected\n";
    return true;
}}

private function disconnect(){
socket_close($this->sock);
$this->status .= "Disconnected\n";}
...