1. Wie realisiert PHP Popen die gleichzeitige Ausführung mehrerer Prozesse?
2. Gehen Sie davon aus, dass 17 Prozesse gleichzeitig gestartet werden müssen, schließen Sie einen Prozess jedes Mal, wenn er abgeschlossen ist, und starten Sie gleichzeitig den nächsten Prozess, was bedeutet, dass nur 5 Prozesse gestartet werden können höchstens gleichzeitig ausgeführt werden
<code>//启动2个进程 for($i = 0;$i < 2;$i++){ $command = "$phpPath $destPHPFile >> $logFile$i"; echo "进程开启时间".date('Y-m-d H:i:s')."\n"; $resource = popen($command,'r'); if(is_resource($resource)){ $success++; pclose($resource);//下一次循环会等待上一个进程执行完毕,pclose才会释放资源 echo date('Y-m-d H:i:s')." 进程:".$i."启动完毕,执行完毕并关闭,开启下一个进程\n"; }else{ $failure++; } }</code>
Antwortinhalt:
Dieser Ansatz entspricht dem Starten eines Prozesses und seiner Ausführung in einer Schleife. Er entspricht der Verarbeitung mehrerer Prozesse durch einen einzelnen Prozess