BSC丨Solana丨AVAX丨LUNA公鏈遊戲系統開發規則丨鏈遊系統開發(結構模型)
BSC丨Solana丨AVAX丨LUNA公鏈遊戲系統開發規則丨鏈遊系統開發(結構模型)模式結構:
/* Gb16978 */ protected static function monitorWorkersForWindows() { Timer::add(1, "\\Workerman\\Worker::checkWorkerStatusForWindows"); static::$globalEvent->loop(); } /** * Exit current process. * * @return void */ protected static function exitAndClearAll() { foreach (static::$_workers as $worker) { $socket_name = $worker->getSocketName(); if ($worker->transport === 'unix' && $socket_name) { list(, $address) = explode(':', $socket_name, 2); @unlink($address); } } @unlink(static::$pidFile); static::log("Workerman[" . basename(static::$_startFile) . "] has been stopped"); if (static::$onMasterStop) { call_user_func(static::$onMasterStop); } exit(0); } /** * Execute reload. * * @return void */ protected static function reload() { // For master process. if (static::$_masterPid === posix_getpid()) { // Set reloading state. if (static::$_status !== static::STATUS_RELOADING && static::$_status !== static::STATUS_SHUTDOWN) { static::log("Workerman[" . basename(static::$_startFile) . "] reloading"); static::$_status = static::STATUS_RELOADING; // Try to emit onMasterReload callback. if (static::$onMasterReload) { try { call_user_func(static::$onMasterReload); } catch (\Exception $e) { static::log($e); exit(250); } catch (\Error $e) { static::log($e); exit(250); } static::initId(); } } if (static::$_gracefulStop) { $sig = SIGQUIT; } else { $sig = SIGUSR1; } // Send reload signal to all child processes. $reloadable_pid_array = array(); foreach (static::$_pidMap as $worker_id => $worker_pid_array) { $worker = static::$_workers[$worker_id]; if ($worker->reloadable) { foreach ($worker_pid_array as $pid) { $reloadable_pid_array[$pid] = $pid; } } else { foreach ($worker_pid_array as $pid) { // Send reload signal to a worker process which reloadable is false. posix_kill($pid, $sig); } } } // Get all pids that are waiting reload. static::$_pidsToRestart = array_intersect(static::$_pidsToRestart, $reloadable_pid_array); // Reload complete. if (empty(static::$_pidsToRestart)) { if (static::$_status !== static::STATUS_SHUTDOWN) { static::$_status = static::STATUS_RUNNING; } return; } // Continue reload. $one_worker_pid = current(static::$_pidsToRestart); // Send reload signal to a worker process. posix_kill($one_worker_pid, $sig); // If the process does not exit after static::KILL_WORKER_TIMER_TIME seconds try to kill it. if(!static::$_gracefulStop){ Timer::add(static::KILL_WORKER_TIMER_TIME, 'posix_kill', array($one_worker_pid, SIGKILL), false); } } // For child processes. else { reset(static::$_workers); $worker = current(static::$_workers); // Try to emit onWorkerReload callback. if ($worker->onWorkerReload) { try { call_user_func($worker->onWorkerReload, $worker); } catch (\Exception $e) { static::log($e); exit(250); } catch (\Error $e) { static::log($e); exit(250); } } if ($worker->reloadable) { static::stopAll(); } } }
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/70019421/viewspace-2907187/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- GameFi鏈遊NFT遊戲開發示例丨GameFi鏈遊遊戲系統開發特點丨DEFI丨nftGAM遊戲開發
- GameFi鏈遊(NFT)遊戲系統制度開發詳情丨DAPP丨defi丨nft丨GameFi鏈遊GAM遊戲APP
- Gamefi鏈遊系統開發(DAPP遊戲開發)丨Gamefi鏈遊系統開發(開發案例)丨原始碼GAMAPP遊戲開發原始碼
- NFT鏈遊卡牌遊戲系統技術開發示例丨NFT卡牌丨鏈遊遊戲丨Dapp遊戲APP
- NFT遊戲鏈遊開發設計丨NFT鏈遊元宇宙系統技術開發丨DAPP丨NFT遊戲元宇宙APP
- islandswap鏈遊系統開發(開發說明)丨islandswap鏈遊遊戲系統開發功能遊戲
- NFT卡牌鏈遊開發功能丨NFT卡牌鏈遊系統開發詳情丨DAPP丨NFTAPP
- NFT鏈遊(GameFi鏈遊)遊戲系統合約開發技術分析丨GameFi丨NFTGAM遊戲
- 智慧城市開發系統技術丨智慧城市NFT鏈遊開發丨DAPP丨nftAPP
- NFT鏈遊合成遊戲系統程式設計開發技術丨dapp丨NFT丨GameFi遊戲程式設計APPGAM
- BTC位元鏈丨ETH以太鏈丨TRX波場鏈丨BSC波場鏈丨OP鏈發行代幣合約質押模式挖礦系統開發模式
- islandswap鏈遊系統開發技術原理丨islandswap鏈遊系統開發詳解
- 元宇宙NFT鏈遊遊戲系統開發規則丨智慧合約dapp鏈遊模式元宇宙遊戲APP模式
- 農場合成NFT鏈遊遊戲系統開發設計思路丨dapp丨NFT遊戲APP
- 馬蹄鏈dapp開發規則丨馬蹄鏈dapp系統開發(案例開發)丨馬蹄鏈原始碼功能APP原始碼
- 區塊鏈遊戲系統開發(Gamefi鏈遊開發案例)丨Gamefi鏈遊系統開發詳細及原始碼區塊鏈遊戲GAM原始碼
- 區塊鏈錢包系統開發丨imtoken丨metamask小狐狸丨tp錢包系統開發詳細規則及方案原始碼區塊鏈原始碼
- 元宇宙+鏈遊系統開發(案例詳細)丨鏈遊系統開發(說明分析)元宇宙
- 成語芝麻官NFT鏈遊系統合約開發丨DAPP丨IDO丨NFTAPP
- Solidity技術丨外星騎士鏈遊系統程式設計開發丨DAPP丨NFTSolid程式設計APP
- 鏈遊系統開發方案分析丨元宇宙NFT遊戲系統開發玩法分析元宇宙遊戲
- 馬蹄鏈開發詳情丨馬蹄鏈系統開發(開發流程)丨馬蹄鏈原始碼部署原始碼
- NFT鏈遊元宇宙遊戲系統技術開發程式設計丨DAPP丨NFT元宇宙遊戲程式設計APP
- 鏈遊模式系統開發搭建功能丨鏈遊系統開發專案方案(技術成熟)模式
- Dapp智慧合約遊戲鏈遊開發丨智慧合約遊戲鏈遊系統開發案例版APP遊戲
- OP 鏈丨 ARB 鏈代幣合約質押挖礦系統開發案例丨演示丨原始碼原始碼
- PIL派鏈流動性挖礦系統開發解析丨DAPP丨defi丨LPAPP
- NFT遊戲鏈遊系統開發技術詳細丨NFT遊戲鏈遊DAPP開發原始碼模式遊戲APP原始碼模式
- 元宇宙遊戲系統開發(功能詳情)丨元宇宙鏈遊系統開發(開發原理)元宇宙遊戲
- NFT遊戲開發丨GameFi鏈遊元宇宙系統開發技術示例遊戲開發GAM元宇宙
- PIL派鏈質押流動性挖礦系統開發丨DAPP丨Defi丨NFT丨IDOAPP
- 公排開發原始碼版丨公排系統開發(技術方案)丨公排系統開發(開發專案)原始碼
- NFT鏈遊元宇宙智慧合約系統開發(運營版)丨DAPP丨NFT丨元宇宙元宇宙APP
- 3D鏈遊系統開發(功能詳情)丨3D鏈遊系統開發(流程原始碼)3D原始碼
- 陽光農場/NFT鏈遊遊戲系統技術開發丨DAPP丨Solidity程式碼示例遊戲APPSolid
- 多鏈錢包開發原理丨多鏈錢包系統開發(詳情及流程)丨多鏈錢包系統原始碼分析原始碼
- GameFi+NFT鏈遊遊戲元宇宙開發程式設計丨鏈遊系統開發技術解析GAM遊戲元宇宙程式設計
- PIL派鏈開發丨PIL質押挖礦系統開發技術丨PIL派鏈開發技術示例