亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

怎樣防止php網頁的處理進程在頁面關閉后被中途kill掉?

怎樣防止php網頁的處理進程在頁面關閉后被中途kill掉?

Helenr 2019-05-23 11:15:32
做了一個php頁面調用shell腳本執行相關操作。shell腳本執行時間比較長(1-2分鐘)且不能被同時調用。為了防止不同人在不同地方用php頁面同時調用shell腳本。所以在調用shell腳本前用php做了一個文件鎖,在shell腳本執行完成之后解鎖。但是若用戶點擊php頁面后馬上又關閉,可能造成以下問題:文件被鎖之后,shell腳本還未執行完,php處理進程就被kill掉了,然后文件未被解鎖,php頁面無法在調用shell腳本。這樣才能防止以上的php進程被kill掉,從而保證上鎖的文件最后被解鎖。
查看完整描述

2 回答

?
繁星點點滴滴

TA貢獻1803條經驗 獲得超3個贊

你在瀏覽器上關閉頁面應該不會影響你的PHP進程啊。
PHP腳本調用shell一般是要阻塞的,如果頁面被返回(響應到了客戶端),php就已經完成了請求的處理,php腳本執行到了exit或者結尾。如果shell不阻塞的話,貌似也會放鎖。
如果說用戶請求php,但是沒有等到響應就關閉,也應該不會影響到服務端PHP的執行。如果你發現文件鎖解不掉就只能靠try...catch...finally了
                            
查看完整回答
反對 回復 2019-05-23
  • 2 回答
  • 0 關注
  • 362 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號