Heim > Artikel > Backend-Entwicklung > Kennen Sie pcntl_fork in PHP?
Was die Installation und Aktivierung der Erweiterung php_pcntl betrifft, werde ich sie hier nicht vorstellen, sondern nur die Funktion pcntl_fork() selbst analysieren.
$one = 123;$one++;$two = time();$pid = [];$pid = pcntl_fork();$three = time();
Wenn die Funktion pcntl_fork() ausgeführt wird, wird ein untergeordneter Prozess erstellt. Der untergeordnete Prozess kopiert alles über den aktuellen Prozess, also den übergeordneten Prozess: Daten, Code und Status.
1. Wenn pcntl_fork() erfolgreich einen untergeordneten Prozess erstellt, wird die untergeordnete Prozessnummer im untergeordneten Prozess zurückgegeben, und im Falle eines Fehlers wird -1 zurückgegeben kopiert den Code des übergeordneten Prozesses, Daten. Dann bedeutet das: Der Code und die Daten, die den untergeordneten und übergeordneten Prozessen gehören, sind genau gleich.
3.
Wichtiger Punkt: Der untergeordnete Prozess kopiert den Status des übergeordneten Prozesses, daher gibt es den obigen Beispielcode: PCntl_fork wird in der fünften Zeile ausgeführt, dann wird auch der Code des erstellten untergeordneten Prozesses ausgeführt ab der fünften Zeile ausgeführt. Der untergeordnete Prozess hat die Daten und den Code kopiert. Daher existiert im untergeordneten Prozess dasselbe: $one, $two und andere Variablen
for ($i = 0; $i < 3; $i++) { $pid = pcntl_fork();}sleep(30);
那么:上面的for循环,实际会产生多少个子进程?答案是7个,在linux下,用ps命令将可以看到8个进程(1个父进程,7个子进程)
Grund: Der übergeordnete Prozess ist in
ich
=
0
Stunde
,
Erstellen
gründen
aus
eins
individuell
Sohn
Eingeben
Verfahren
0
,
Das
Stunde
von
Sohn
Eingeben
Verfahren
,
zurückkehren
treffen
Fortsetzung
Fortsetzung
OK
Verkehr
Ring
.
Erstellen
gründen
aus
Gattung
Bei
seit
von
Sohn
Eingeben
Verfahren
.
Dasselbe
Grund
::
Wenn i = 0, wird ein untergeordneter Prozess 0 erstellt. Zu diesem Zeitpunkt führt der untergeordnete Prozess die Schleife weiter aus. Erstellen Sie Ihren eigenen untergeordneten Prozess.Gleicher Grund:
i=0Wenn , createbuild raus Onesubcome in Cheng0,DiesmalsKindtrittCheng,Rückkehrwirdweitermachen Weiter BeharrlichkeitAusführungFolgen Ring. Erstellenbauenausgehörenzusich selbstseinemSohninProzess. Das Gleiche wie: Dies geschieht auch, wenn i=1...Empfohlenes Lernen: „PHP-Video-Tutorial“
Das obige ist der detaillierte Inhalt vonKennen Sie pcntl_fork in PHP?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!