ping(); } } else { $data = json_decode($buffer, true); if (!empty($data) && is_array($data)) { $async->pushJob($data); } } } } catch (RedisException $e) { debug_log("Transfer@{$addr} catched an RedisException:" . $e->getMessage(), 'EXCEPTION', LOG_NAME); } fclose($s); unlink($lockFile); /** * 信号处理函数 * @param int $signo 信号 */ function sig_handle($signo) { global $quit, $restart; switch ($signo) { //退出 case SIGTERM: $quit = true; break; //重启 case SIGUSR1: $restart = true; break; //定时器 case SIGUSR2: break; } }