onError
Descrição:
callback Worker::$onError
É acionado quando ocorre um erro na conexão do cliente.
Atualmente, os tipos de erro são:
-
Falha ao chamar
Connection::senddevido à desconexão do cliente (em seguida, será acionado o callbackonClose)(code:WORKERMAN_SEND_FAIL msg:client closed) -
Após acionar
onBufferFull(buffer de envio está cheio), ainda assim chamarConnection::send, e o buffer de envio permanecer cheio, resultando em falha no envio (não acionará o callbackonClose)(code:WORKERMAN_SEND_FAIL msg:send buffer full and drop package) -
Falha na conexão assíncrona ao usar
AsyncTcpConnection(em seguida, será acionado o callbackonClose)(code:WORKERMAN_CONNECT_FAIL msg:stream_socket_client retornou mensagem de erro)
Parâmetros do Callback
$connection
Objeto de conexão, ou seja, uma instância de TcpConnection, usada para operar a conexão do cliente, como enviar dados, fechar a conexão, etc.
$code
Código de erro
$msg
Mensagem de erro
Exemplo
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";
};
// Executa o worker
Worker::runAll();
Dica: Além de usar funções anônimas como callback, também é possível consultar aqui para usar outras formas de callback.