Re: [請益] multithread
※ 引述《ojinjin (小歐)》之銘言:
: 請問有沒有辦法在 php 寫出 multithread 的程式?
: google 只有找到在 linux 下的做法
: 謝謝
1. php 本身沒有提供 create thread 的函式或功能.
2. 如果 httpd 是使用 apache 的話, 每一個 request 是來自一個 thread (吧 XD)
3. php 能夠以 pcntl_fork 的方式產生 process.
4. 你也可以透過 execution 的方式, 產生子 process.
你也可以決定母 process (.php) 要不要等子 process 跑完.
要在不同的 php process 間溝通, 你能夠透過:
1) files (包含 ram-drive, CDRom, DB 等)
2) Memory (SHM, global variables, server/env variables)
3) stdin/stdout (using $argv & outputs)
4) session / cookie (under HTML/XHTML)
如果你有某些演算法, 需要多個 thread 來增進效能的話,
建議用其他語言在 server side 寫出程式由 php 呼叫,
另寫一頁面用以取得執行結果, 會比較適合. (尚未完成時顯示執行進度是個好主意)
另外, 你可能會需要 set_time_limit 來改變執行時間,
相關請見 http://tw.php.net/manual/en/function.set-time-limit.php
--
鬼壓床怎麼辦
騎上去啊
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.112.217.134
推
10/25 15:06, , 1F
10/25 15:06, 1F
推
10/25 16:55, , 2F
10/25 16:55, 2F
討論串 (同標題文章)
PHP 近期熱門文章
PTT數位生活區 即時熱門文章