globalEvent
คำอธิบาย:
static Event Worker::$globalEvent
คุณสมบัตินี้เป็นคุณสมบัติสถิติโลก ซึ่งเป็นตัวอย่าง eventloop ที่สามารถลงทะเบียนเหตุการณ์การอ่านและเขียนของไฟล์ดีสคริปเตอร์หรือเหตุการณ์สัญญาณได้
ตัวอย่าง
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";
// เมื่อกระบวนการได้รับสัญญาณ SIGALRM แสดงข้อมูลบางอย่าง
Worker::$globalEvent->add(SIGALRM, EventInterface::EV_SIGNAL, function()
{
echo "Get signal SIGALRM\n";
});
};
// เรียกใช้งาน worker
Worker::runAll();
การทดสอบ
หลังจากที่ Workerman เริ่มต้น ระบบจะพิมพ์ pid ของกระบวนการปัจจุบัน (ตัวเลขหนึ่งตัว) คำสั่งที่เรียกใช้ในบรรทัดคำสั่ง
kill -SIGALRM กระบวนการpid
เซิร์ฟเวอร์จะพิมพ์ออกมาว่า
Get signal SIGALRM