globalEvent

Açıklama:

static Event Worker::$globalEvent

Bu özellik global bir statik özelliktir ve global bir eventloop örneğidir. Dosya tanımlayıcılarının okuma/yazma olaylarını veya sinyal olaylarını kaydetmek için kullanılabilir.

Örnek

use Workerman\Worker;
use Workerman\Events\EventInterface;
require_once __DIR__ . '/vendor/autoload.php';

$worker = new Worker();
$worker->onWorkerStart = function($worker)
{
    echo 'Pid is ' . posix_getpid() . "\n";
    // Süreç SIGALRM sinyalini aldığında bazı bilgileri yazdır
    Worker::$globalEvent->add(SIGALRM, EventInterface::EV_SIGNAL, function()
    {
        echo "Get signal SIGALRM\n";
    });
};
// worker'ı çalıştır
Worker::runAll();

Test

Workerman başlatıldığında, mevcut süreç pid'sini (bir sayı) yazdıracaktır. Komut satırında çalıştırın

kill -SIGALRM 进程pid

Sunucu şu çıktıyı verecektir:

Get signal SIGALRM