PHP創(chuàng)建單例后臺(tái)進(jìn)程的方法示例
本文實(shí)例講述了PHP創(chuàng)建單例后臺(tái)進(jìn)程的方法。分享給大家供大家參考,具體如下:
可以通過如下語(yǔ)句啟動(dòng)一個(gè)PHP后臺(tái)進(jìn)程:
$command = " php script.php "; $pid = exec("nohup $command > /dev/null 2>&1 & echo $!");
nohup表示這個(gè)進(jìn)程獨(dú)立于創(chuàng)建的用戶,可以以守護(hù)方式運(yùn)行。
如果需要這個(gè)后臺(tái)進(jìn)程是單例運(yùn)行的,那么可以通過下面的方法來(lái)記錄/判斷進(jìn)程是否已運(yùn)行
//query the database for process id $query = "SELECT pid FROM `daemons` WHERE `pid` = '2013' LIMIT 1"; $result = mysql_query($query); $pid = mysql_result($result, 0, 'pid'); //check if the process is running exec("ps $pid", $pState); if((count($pState) >= 2) && !empty($pid)) { echo "RUNNING"; } else { echo "INACTIVE"; }
也可以把pid寫入文件,但如果在一個(gè)分布式任務(wù)環(huán)境中,則放在數(shù)據(jù)庫(kù)中要更好
停止一個(gè)后臺(tái)進(jìn)程:
//check if the process from the database is running exec("ps $pid", $pState); if((count($pState) >= 2)) { //if the process is running, kill it exec("kill $pid"); //update database row with an empty process id }
更多關(guān)于PHP相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《PHP進(jìn)程與線程操作技巧總結(jié)》、《PHP網(wǎng)絡(luò)編程技巧總結(jié)》、《PHP基本語(yǔ)法入門教程》、《php日期與時(shí)間用法總結(jié)》、《php面向?qū)ο蟪绦蛟O(shè)計(jì)入門教程》、《PHP數(shù)組(Array)操作技巧大全》、《php字符串(string)用法總結(jié)》、《php+mysql數(shù)據(jù)庫(kù)操作入門教程》及《php常見數(shù)據(jù)庫(kù)操作技巧匯總》
希望本文所述對(duì)大家PHP程序設(shè)計(jì)有所幫助。
- 深入解析PHP中的(偽)多線程與多進(jìn)程
- PHP多進(jìn)程編程實(shí)例
- 深入探究PHP的多進(jìn)程編程方法
- PHP下操作Linux消息隊(duì)列完成進(jìn)程間通信的方法
- PHP高級(jí)編程實(shí)例:編寫守護(hù)進(jìn)程
- PHP輸出當(dāng)前進(jìn)程所有變量/常量/模塊/函數(shù)/類的示例
- php的POSIX 函數(shù)以及進(jìn)程測(cè)試的深入分析
- PHP COOKIE設(shè)置為瀏覽器進(jìn)程
- PHP中實(shí)現(xiàn)進(jìn)程間通訊
- 解析PHP實(shí)現(xiàn)多進(jìn)程并行執(zhí)行腳本
相關(guān)文章
深入解析yii權(quán)限分級(jí)式訪問控制的實(shí)現(xiàn)(非RBAC法)
本篇文章是對(duì)yii權(quán)限分級(jí)式訪問控制的實(shí)現(xiàn)方法進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下2013-06-06php實(shí)現(xiàn)微信公眾平臺(tái)賬號(hào)自定義菜單類
這篇文章主要介紹了php實(shí)現(xiàn)微信公眾平臺(tái)賬號(hào)自定義菜單類的方法,涉及針對(duì)微信接口API的二次開發(fā),是非常實(shí)用的技巧,需要的朋友可以參考下2014-12-12

php中array_unshift()修改數(shù)組key注意事項(xiàng)分析

PHP獲取指定函數(shù)定義在哪個(gè)文件中以及其所在的行號(hào)實(shí)例

PHP實(shí)現(xiàn)微信模擬登陸并給用戶發(fā)送消息的方法【文字,圖片,圖文】

PHP查詢并刪除數(shù)據(jù)庫(kù)多列重復(fù)數(shù)據(jù)的方法(利用數(shù)組函數(shù)實(shí)現(xiàn))

Ajax+PHP實(shí)現(xiàn)的模擬進(jìn)度條功能示例