Re: [請益] 使用者斷線後 php 是否會自動結束執行?

作者: darkk6 (Mr. Pan)   2014-05-07 13:10:44
先感謝大家的建議~
推 gpmm:嘛,其實你可以自己測一下啊 XD (寫 log 這樣 05/07 10:30
這個我還真的沒想到XDDD 我測試過了,在底下~~~
推 banjmin:只是要播影片的話 為什麼要這樣寫? 05/07 11:26
→ banjmin:另外 關掉當然會停止 就像把cmd while(1)程式關掉一樣 05/07 11:27
這個其實有點弔詭XDDD
現在主要是狀況 2 首先 IPCam 只有內部IP,
而且需要帳號登入,但上頭想要外面的人看的到,而且不用登入
所以透過一台有外部 IP 的 Server 轉介 orz
→ alog:那是不可能終止的,http request 是單向傳輸的 05/07 11:41
→ alog:server端不會知道使用者關閉,通常由php or server 程式中斷 05/07 11:41
→ alog:你如果把 set_time_limit 設為 0 很有可能程式會一直跑 05/07 11:42
→ alog:除非你server程式分出來的process意外中斷都不會斷線 05/07 11:43
→ alog:雖然不清楚你要做的東西,不過可以給個小建議 05/07 11:45
→ alog:在這死迴圈內加入一段程式碼,檢查使用者是否還在瀏覽畫面 05/07 11:46
→ alog:如果他跳開了就break 05/07 11:47
→ alog:看你要隔多少時間檢查一次..這不難處理 05/07 11:47
推 alog:另一種做法是,系統這裡弄個程式掛著,定時處理畫面 05/07 11:51
→ alog:把畫面輸出在伺服器的檔案系統上,使用者端只要純粹看圖就可 05/07 11:52
了解,晚點我還是會試試看~~~ 不過這部分似乎沒辦法判斷使用者是否關閉吧 0.0
(使用者跳開了 break 的部分)
推 Kenqr:用無限迴圈的話,這樣網頁是不是會一直在載入狀態? 05/07 12:19
→ Kenqr:圖片輪播的部份,感覺從client端用js處理會比較好 05/07 12:20
Client 不一定是 Browser , 有可能有人要用 WebCam Viewer 看( or MJPEG viewer )
是有製作一個 js + 靜態截圖的網頁,但大部分人反映不夠及時
至於網頁會用 <img> 的 tag ,所以本身不會一直處在載入狀態 (php搭配 ob_flush)
推 banjmin:我懂了 就像Comet那樣 05/07 12:30
暫時不考慮 Comet 這類的方法,因為大部分人是用 MJPEG Viewer 看 orz
=============================================
關於 gpmm 大說的,直接試試看的部分我做過測試了,我將程式碼加入
了兩行 http://pastie.org/9147817 (有註解的兩行)
在 Client 還連著的情況我每秒下指令 "type test.txt" 觀察內容
秒數有再增加
但我關掉 Client 之後,就停了不再增加,看來應該是關閉了(吧)
Client 測試了兩種:
1. Browser ( 用 <img src="xxxxxx.php" /> )
2. Cambozola (這個是 MJPEG Viewer)
都 OK ,再次感謝大家 :D
至於狀況 1 ,目前似乎不打算繼續了,所以能解決 2 就好了XDD
作者: gpmm (銀色)   2014-05-11 23:12:00
推一個實驗精神 XDD (Y)

Links booklink

Contact Us: admin [ a t ] ucptt.com