成人无码视频,亚洲精品久久久久av无码,午夜精品久久久久久毛片,亚洲 中文字幕 日韩 无码

資訊專欄INFORMATION COLUMN

PHP多線程實例

hearaway / 1466人閱讀

摘要:暫無第一次運行線程收到任務參數(shù)需要秒處理數(shù)據(jù)線程等待任務這里創(chuàng)建線程池啟動所有線程使其處于工作狀態(tài)派發(fā)任務給線程參數(shù)為空則說明線程空閑線程空閑放入?yún)?shù)上次參數(shù)結(jié)果所有線程派發(fā)完畢等待執(zhí)行完成等待所有

res    = "暫無,第一次運行.";
        $this->param    = 0;
        $this->lurl   = 0;
        $this->name   = $name;
        $this->runing = true;
        $this->lc     = false;
    }

    public function run() {
        while ($this->runing) {
            if ($this->param != 0) {
                $nt          = rand(1, 10);
                echo "線程[{$this->name}]收到任務參數(shù)::{$this->param},需要{$nt}秒處理數(shù)據(jù).
";
                $this->res   = rand(100, 999);
                sleep($nt);
                $this->lurl = $this->param;
                $this->param   = "";
            } else {
                echo "線程[{$this->name}]等待任務..
";
            }
            sleep(1);
        }
    }
}

//這里創(chuàng)建線程池.
$pool[] = new vote("a");
$pool[] = new vote("b");
$pool[] = new vote("c");

//啟動所有線程,使其處于工作狀態(tài)
foreach ($pool as $w) {
    $w->start();
}

//派發(fā)任務給線程
for ($i = 1; $i < 10; $i++) {
    $worker_content = rand(10, 99);
    while (true) {
        foreach ($pool as $worker) {
            //參數(shù)為空則說明線程空閑
            if ($worker->param=="") {
                $worker->param = $worker_content;
                echo "[{$worker->name}]線程空閑,放入?yún)?shù){$worker_content},上次參數(shù)[{$worker->lurl}]結(jié)果[{$worker->res}].
";
                break 2;
            }
        }
        sleep(1);
    }
}
echo "所有線程派發(fā)完畢,等待執(zhí)行完成.
";

//等待所有線程運行結(jié)束
while (count($pool)) {
    //遍歷檢查線程組運行結(jié)束
    foreach ($pool as $key => $threads) {
        if ($worker->param=="") {
            echo "[{$threads->name}]線程空閑,上次參數(shù)[{$threads->lurl}]結(jié)果[{$threads->res}].
";
            echo "[{$threads->name}]線程運行完成,退出.
";
            //設置結(jié)束標志
            $threads->runing = false;
            unset($pool[$key]);
        }
    }
    echo "等待中...
";
    sleep(1);
}
echo "所有線程執(zhí)行完畢.
";

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://m.hztianpu.com/yun/22119.html

相關文章

  • php 線程pthreads官網(wǎng)翻譯

    摘要:它包含了你創(chuàng)建多線程應用的全部工具,當然無論是還是控制臺程序。任何想要應用在程序里面的多線程應用必須都是繼承于這幾個實用類以上版本取消了類。 不分享,做一切! php擁有令人敬畏的且數(shù)量龐大的擴展跟特征,但是php當初設計這門語言的時候,是因為那個時候的web網(wǎng)站遠遠沒有今天的強大!現(xiàn)在幾乎所有的網(wǎng)站(含手機站)服務器都是多核的,如果不是多CPU跟多核,PHP是無法提供更好的服務的。雖...

    heartFollower 評論0 收藏0
  • PHP并發(fā)IO編程之路

    摘要:下文如無特殊聲明將使用進程同時表示進程線程。收到數(shù)據(jù)后服務器程序進行處理然后使用向客戶端發(fā)送響應?,F(xiàn)在各種高并發(fā)異步的服務器程序都是基于實現(xiàn)的,比如。 并發(fā) IO 問題一直是服務器端編程中的技術難題,從最早的同步阻塞直接 Fork 進程,到 Worker 進程池/線程池,到現(xiàn)在的異步IO、協(xié)程。PHP 程序員因為有強大的 LAMP 框架,對這類底層方面的知識知之甚少,本文目的就是詳細介...

    Riddler 評論0 收藏0
  • Swoole筆記(一)

    摘要:修復添加超過萬個以上定時器時發(fā)生崩潰的問題增加模塊,下高性能序列化庫修復監(jiān)聽端口設置無效的問題等。線程來處理網(wǎng)絡事件輪詢,讀取數(shù)據(jù)。當?shù)娜挝帐殖晒α艘院?,由這個線程將連接成功的消息告訴進程,再由進程轉(zhuǎn)交給進程。此時進程觸發(fā)事件。 本文示例代碼詳見:https://github.com/52fhy/swoo...。 簡介 Swoole是一個PHP擴展,提供了PHP語言的異步多線程服務器...

    SHERlocked93 評論0 收藏0
  • Node.js運行原理、高并發(fā)性能測試對比及生態(tài)圈匯總

    摘要:模式,單實例多進程,常用于多語言混編,比如等,不支持端口復用,需要自己做應用的端口分配和負載均衡的子進程業(yè)務代碼。就是我們需要一個調(diào)度者,保證所有后端服務器都將性能充分發(fā)揮,從而保持服務器集群的整體性能最優(yōu),這就是負載均衡。 showImg(https://segmentfault.com/img/remote/1460000019425391?w=1440&h=1080); Nod...

    kamushin233 評論0 收藏0

發(fā)表評論

0條評論

閱讀需要支付1元查看
<