第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

如何在PHP應(yīng)用程序中使用多線程

如何在PHP應(yīng)用程序中使用多線程

PHP
慕妹3242003 2019-06-05 11:03:27
如何在PHP應(yīng)用程序中使用多線程是否有一種實(shí)際的方法在PHP中實(shí)現(xiàn)多線程模型,無論是真實(shí)的,還是僅僅模擬它。一段時(shí)間以前,有人建議您可以強(qiáng)制操作系統(tǒng)加載PHP可執(zhí)行文件的另一個(gè)實(shí)例,并處理其他同時(shí)進(jìn)行的進(jìn)程。這方面的問題是,當(dāng)PHP代碼完成執(zhí)行時(shí),PHP實(shí)例將保留在內(nèi)存中,因?yàn)闊o法從PHP中殺死它。所以,如果你在模擬幾個(gè)線程,你可以想象會(huì)發(fā)生什么。因此,我仍然在尋找一種方法,多線程可以有效地完成或模擬內(nèi)PHP。有什么想法嗎?
查看完整描述

3 回答

?
素胚勾勒不出你

TA貢獻(xiàn)1827條經(jīng)驗(yàn) 獲得超9個(gè)贊

你為什么不用波芬?

for ($i=0; $i<10; $i++) {
    // open ten processes
    for ($j=0; $j<10; $j++) {
        $pipe[$j] = popen('script2.php', 'w');
    }

    // wait for them to finish
    for ($j=0; $j<10; ++$j) {
        pclose($pipe[$j]);
    }}


查看完整回答
反對(duì) 回復(fù) 2019-06-05
?
江戶川亂折騰

TA貢獻(xiàn)1851條經(jīng)驗(yàn) 獲得超5個(gè)贊

線程在普通PHP中是不可用的,但是通過使用HTTP請(qǐng)求作為異步調(diào)用,并發(fā)編程是可能的。

將curl的超時(shí)設(shè)置為1,并對(duì)希望相互關(guān)聯(lián)的進(jìn)程使用相同的Session_id,您可以與會(huì)話變量進(jìn)行通信,如下面的示例所示。使用此方法,您甚至可以關(guān)閉瀏覽器,并且并發(fā)進(jìn)程仍然存在于服務(wù)器上。

不要忘記驗(yàn)證正確的會(huì)話ID,如下所示:

http:/localhost/test/verifysession.php?sessionid=[正確身份證]

startprocess.php

$request = "http://localhost/test/process1.php?sessionid=".$_REQUEST["PHPSESSID"];$ch = curl_init();curl_setopt($ch, CURLOPT_URL, $request);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);curl_setopt($ch, CURLOPT_TIMEOUT, 1);curl_exec($ch);curl_close($ch);echo $_REQUEST["PHPSESSID"];

process1.php

set_time_limit(0);if ($_REQUEST["sessionid"])
   session_id($_REQUEST["sessionid"]);function checkclose(){
   global $_SESSION;
   if ($_SESSION["closesession"])
   {
       unset($_SESSION["closesession"]);
       die();
   }}while(!$close){
   session_start();
   $_SESSION["test"] = rand();
   checkclose();
   session_write_close();
   sleep(5);}

verifysession.php

if ($_REQUEST["sessionid"])
    session_id($_REQUEST["sessionid"]);session_start();var_dump($_SESSION);

closeprocess.php

if ($_REQUEST["sessionid"])
    session_id($_REQUEST["sessionid"]);session_start();$_SESSION["closesession"] = true;var_dump($_SESSION);


查看完整回答
反對(duì) 回復(fù) 2019-06-05
  • 3 回答
  • 0 關(guān)注
  • 613 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)