Quellcode durchsuchen

add onWorkerReload callback

walkor vor 10 Jahren
Ursprung
Commit
0103fc1dc3
2 geänderte Dateien mit 13 neuen und 0 gelöschten Zeilen
  1. 2 0
      Lib/Constants.php
  2. 11 0
      Worker.php

+ 2 - 0
Lib/Constants.php

@@ -19,6 +19,8 @@ if(!ini_get('date.timezone') )
 }
 // 显示错误到终端
 ini_set('display_errors', 'on');
+// 报告所有错误
+error_reporting(E_ALL);
 
 // 连接失败
 define('WORKERMAN_CONNECT_FAIL', 1);

+ 11 - 0
Worker.php

@@ -167,6 +167,12 @@ class Worker
     public $onWorkerStop = null;
     
     /**
+     * 当收到reload命令时的回调函数
+     * @var callback
+     */
+    public $onWorkerReload = null;
+    
+    /**
      * 传输层协议
      * @var string
      */
@@ -1040,6 +1046,11 @@ class Worker
         {
             // 如果当前worker的reloadable属性为真,则执行退出
             $worker = current(self::$_workers);
+            // 如果有设置Reload回调,则执行
+            if($worker->onWorkerReload)
+            {
+                call_user_func($worker->onWorkerReload, $this);
+            }
             if($worker->reloadable)
             {
                 self::stopAll();