我試圖重寫我的代碼以支持多線程多線程,它是一個簡單的代碼,但我無法弄清楚如何做到這一點,基本上是什麼做的是我該怎麼辦在PHP
- 請求第一個帶curl的網頁 - >得到一個唯一的ID
- 使用唯一的ID來請求另一個頁面 - >獲得一個會話
- 使用會話請求另一個頁面---> sleep()然後做它再次
現在這是一個單一的thr EAD做的,但我想在同一時間
我所做的是,創建3個sperate文件
第一個創造了10屆,並將它們保存在其他參數的txt文件,創造了很多的線程(會話1 | unique_id1 | paramter1 | anotherparameter1)
第二個文件包含的代碼
$sessions = file('sessions.txt');
$WshShell = new COM("WScript.Shell");
foreach($sessions as $kk => $session) {
if (!empty($session)) {
$oExec = $WshShell - > Run("php requests.php $kk", 0, false);
}
}
它打開txt文件,和foreach線它打開請求具有行數argv中
文件210,並在第三個文件,它走線數量,並開啓了會議文件,retreive會議的paramater並與該會話
所以這是我做了我的多線程發送請求,但我覺得我寫了一個PHP代碼與岩石 現在我想重寫它,而無需打開10 sperate php過程
http://php.net/manual/en/intro.pthreads.php - PThreads是將線程添加到PHP的擴展。我個人只是分叉進程。 – kainaw 2015-03-02 17:33:11
感謝您的答案,你能至少幫我多線程後,我得到的會議,我的意思是我想打開所有會議一次使用捲曲 ,我不明白如何curl_multi工作:/ – javodri 2015-03-02 17:34:38
首先,你需要安裝pthreads擴展。如果您沒有安裝擴展程序,爲pthreads編寫代碼是毫無意義的。我提供的鏈接顯示瞭如何安裝它以及如何創建線程。 – kainaw 2015-03-02 17:36:11