onError

Açıklama:

callback Worker::$onError

Müşteri bağlantısında hata oluştuğunda tetiklenir.

Mevcut hata türleri şunlardır:

  1. Connection::send çağrısının müşteri bağlantısının kesilmesi nedeniyle başarısız olması (hemen ardından onClose geri çağrısı tetiklenecektir) (code:WORKERMAN_SEND_FAIL msg:client closed)

  2. onBufferFull tetiklendikten sonra (gönderim tamponu dolmuş), hala Connection::send çağrısı yapılması ve gönderim tamponunun hala dolu olması nedeniyle gönderimin başarısız olması (bu durum onClose geri çağrısını tetiklemez) (code:WORKERMAN_SEND_FAIL msg:send buffer full and drop package)

  3. AsyncTcpConnection ile asenkron bağlantının başarısız olması durumunda (hemen ardından onClose geri çağrısı tetiklenecektir) (code:WORKERMAN_CONNECT_FAIL msg:stream_socket_client tarafından döndürülen hata mesajı)

Geri Çağrı Fonksiyonunun Parametreleri

$connection

Bağlantı nesnesi, yani TcpConnection örneği, müşteri bağlantısını yönetmek için, örneğin veri gönderme, bağlantıyı kapatma gibi işlemler için kullanılır.

$code

Hata kodu

$msg

Hata mesajı

Örnek

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 "hata $code $msg\n";
};
// worker'ı çalıştır
Worker::runAll();

Not: Anonim fonksiyon kullanmanın yanı sıra, buraya göz atarak diğer geri çağrı yazım yöntemlerini de kullanabilirsiniz.