国产+高潮+在线,国产 av 仑乱内谢,www国产亚洲精品久久,51国产偷自视频区视频,成人午夜精品网站在线观看

父進程如何知道子進程全部結(jié)束(或者是:如何判斷所有異步結(jié)束)

eyunzhu

在實現(xiàn)異步任務(wù)過程中,有個需求是for循環(huán)任務(wù)下發(fā)給‘任務(wù)進程服務(wù)端’,那如何判斷所有異步任務(wù)都完成了呢?

我使用了如圖方式:
截圖
此中方式可以實現(xiàn)單此請求時正常

但是當我同時多次進行for循環(huán)任務(wù)下發(fā)就不正常了,比如下發(fā)6次任務(wù),他只輸出兩次‘任務(wù)完成’

請問如何實現(xiàn)想要的結(jié)果呢

3179 3 0
3個回答

six

if ($times >= 15) ?這個判斷去掉就可以輸出6次了

  • 暫無評論
eyunzhu

額,不可以的
我的程序流程是:如圖,每個一級任務(wù)都會循環(huán)下發(fā)15次異步任務(wù),那我連續(xù)下發(fā)6個一級任務(wù),也就是6*15=95個異步任務(wù)。
我如何知道這6個一級任務(wù)其子15個異步任務(wù)完成了呢。

  • 暫無評論
six

哦,你開始沒描述清楚。
$times 不要用全局變量來記錄,因為每一級任務(wù)都可能會覆蓋這個變量。我覺得把times放到$task_connection對象里來記錄會好一些。因為每個$task_connection都是獨立的,互相不會覆蓋數(shù)據(jù)。

$task_connection->onMessage = function($task_connection, $result){
        if (!isset($task_connection->times)) $task_connection->times = 0;
        if (++$task_connection->times >= 15) {
            echo "任務(wù)完成";
        }
};
  • 暫無評論
年代過于久遠,無法發(fā)表回答
??