onError

Descrizione:

callback Worker::$onError

Viene attivato quando si verifica un errore sulla connessione del client.

Attualmente i tipi di errore sono:

  1. Errore causato dal fallimento della chiamata a Connection::send a causa della disconnessione del client (a seguire verrà attivato il callback onClose) (code:WORKERMAN_SEND_FAIL msg:client closed)

  2. Dopo aver attivato onBufferFull (il buffer di invio è pieno), se si continua a chiamare Connection::send e il buffer di invio è ancora pieno, il tentativo di invio fallirà (non verrà attivato il callback onClose) (code:WORKERMAN_SEND_FAIL msg:send buffer full and drop package)

  3. Quando si verifica un errore durante il tentativo di connessione asincrona utilizzando AsyncTcpConnection (a seguire verrà attivato il callback onClose) (code:WORKERMAN_CONNECT_FAIL msg:stream_socket_client returned error message)

Parametri della funzione di callback

$connection

Oggetto di connessione, ovvero un'istanza di TcpConnection, utilizzata per gestire la connessione del client, come inviare dati, chiudere la connessione e così via.

$code

Codice di errore.

$msg

Messaggio di errore.

Esempio

use Workerman\Worker;
use Workerman\Connection\TcpConnection;
require_once __DIR__ . '/vendor/autoload.php';

$worker = new Worker('websocket://0.0.0.0:8484');
$worker->onError = function(TcpConnection $connection, $code, $msg)
{
    echo "error $code $msg\n";
};
// Eseguire il worker
Worker::runAll();

Nota: oltre a utilizzare una funzione anonima come callback, è possibile fare riferimento qui per utilizzare altri stili di scrittura dei callback.