onError
Açıklama:
geriçağırım Worker::$onError
Müşteri bağlantısında bir hata oluştuğunda tetiklenir.
Şu anda hata türleri şunlardır
-
Connection::send'i aramak başarısız olduğunda (müşteri bağlantısı kesildiği için) (hemen onClose geriçağırımını tetikler)
(kod:WORKERMAN_SEND_FAIL msg:müşteri kapandı)
-
onBufferFull'ü tetikledikten sonra (gönderme tamponu dolu) ve hala Connection::send'i çağırırsak ve gönderme tamponu hala doluysa gönderme başarısız olur (onClose geri çağrımını tetiklemez)
(kod:WORKERMAN_SEND_FAIL msg:gönderme tamponu dolu ve paket düşürüldü)
-
AsyncTcpConnection asenkron bağlantı hatası durumunda (hemen onClose geri çağırımını tetikler)
(kod:WORKERMAN_CONNECT_FAIL msg:stream_socket_client tarafından döndürülen hata mesajı)
Geriçağırım işlevi parametreleri
$connection
Bağlantı nesnesi, yani TcpConnection örneği, müşteri bağlantısını yönetmek için kullanılır, örneğin veri gönderimi, bağlantıyı kapatma vb.
$code
Hata kodu
$msg
Hata iletileri
Ö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: Geriçağırım olarak anonim fonksiyonun yanı sıra buradan referans alarak diğer geri çağırım yazma yöntemlerini de kullanabilirsiniz.