$http_worker->onMessage = function($connection, $data){
$pdo = new PDO("mysql:host=".$conf.";dbname=".$conf,$conf,$conf);
?
....
?
$connection->send($data);
}
?
onMessage 中回調(diào)函數(shù)執(zhí)行完成, $pdo 是否被自動(dòng)釋放了?
?
因?yàn)榘l(fā)現(xiàn) define 的常量在進(jìn)程完成后仍未釋放,所以擔(dān)心 數(shù)據(jù)庫(kù)鏈接 也不會(huì)釋放,這樣就需要處理mysql gone away。
?
不知哪位有此經(jīng)驗(yàn)給予個(gè)提示: 是否$pdo鏈接隨 onMessage 結(jié)束 可自行釋放。如果不會(huì)自行釋放,是否可以手動(dòng)用代碼關(guān)閉?謝謝。
?
備注:因?yàn)?workerman 字典的 mysql組件操作數(shù)據(jù)不便,所以未用,直接用pdo了。
根據(jù)PHP的垃圾回收機(jī)制: onXXXX 等等回調(diào)函數(shù)內(nèi)的臨時(shí)變量會(huì)在函數(shù)執(zhí)行完畢后自動(dòng)回收。