Heim > Backend-Entwicklung > PHP-Tutorial > Wie kann ich PHP-Befehle asynchron ausführen, ohne das Skript zu blockieren?

Wie kann ich PHP-Befehle asynchron ausführen, ohne das Skript zu blockieren?

Susan Sarandon
Freigeben: 2024-12-05 11:58:09
Original
316 Leute haben es durchsucht

How Can I Execute PHP Commands Asynchronously Without Blocking the Script?

PHP-Befehle ausführen, ohne auf Ergebnisse zu warten

Das Ausführen von Befehlen mit exec() in PHP führt normalerweise dazu, dass das Skript auf den Abschluss des Befehls wartet . Es gibt jedoch eine Möglichkeit, Befehle asynchron auszuführen, sodass das Skript fortfahren kann, ohne auf die Ergebnisse warten zu müssen.

In der Dokumentation wird erläutert, dass Sie sowohl die Standardausgabe als auch die Standardfehlerausgabe nach /dev/null umleiten und dann im Hintergrund ausführen können Befehl, um dies zu erreichen:

> /dev/null 2>&1 &
Nach dem Login kopieren

Dadurch wird sichergestellt, dass der Befehl keine Ausgabe erzeugt, die das PHP-Skript blockieren würde.

Alternativ können Sie zum Starten eines Um einen völlig unabhängigen Prozess zu erstellen, können Sie den folgenden Befehl verwenden:

exec('bash -c "exec nohup setsid your_command > /dev/null 2>&1 &"');
Nach dem Login kopieren

Dieser Befehl erstellt eine neue Bash-Shell, die den angegebenen Befehl ausführt. Der Prozess wird vom aktuellen Apache-Thread getrennt und läuft auch dann weiter, wenn die Seite beendet wird.

Das obige ist der detaillierte Inhalt vonWie kann ich PHP-Befehle asynchron ausführen, ohne das Skript zu blockieren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage