Swoole-Coroutine ist ein leichterer Thread. Coroutinen werden in Threads ausgeführt. Sie werden hauptsächlich zur Umwandlung wettbewerbsfähiger Ressourcen in Threads verwendet und eignen sich für die Bearbeitung intensiver IO-Aufgaben.
Die Betriebsumgebung dieses Tutorials: Windows 10-System, Swoole 4-Version, DELL G3-Computer
Lassen Sie uns zunächst über Coroutine sprechen und verstehen, wofür es verwendet wird Was sind seine Eigenschaften?
Coroutinen sind eine leichtere Existenz als Threads. So wie ein Prozess mehrere Threads haben kann, kann ein Thread mehrere Coroutinen haben. Coroutinen haben die folgenden Eigenschaften: Ausführung im Benutzermodus, vollständig vom Programm gesteuert, nicht vom Betriebssystemkernel verwaltet. Geeignet für die Verarbeitung von E / A-intensiven Aufgaben. Hier werde ich nicht auf Details eingehen. Der Hauptunterschied besteht darin, dass CPU-intensive Aufgaben die Wettbewerbsressourcen im Thread in kollaborativen Betrieb umwandeln Der Kontextwechsel-Overhead wird hauptsächlich auf Threads ausgeführt. Im Gegensatz dazu wird der Kontextwechsel des Prozesses in der Stapelressource gespeichert, während die Coroutine asynchron und nicht blockierend ist, was nur der Warteschlangenaufgabe im Benutzermodus-Thread entspricht Wenn Sie den Kanal als Rückruf verwenden, müssen Sie nach Abschluss der Aufgabe keine Ressourcen zweimal abrufen. Coroutinen können einfach als Threads verstanden werden, dieser Thread befindet sich jedoch im Benutzermodus und erfordert keine Beteiligung des Betriebssystems. Die Kosten für die Erstellung, Zerstörung und Umschaltung sind sehr gering. Der Unterschied besteht darin, dass Coroutinen die Vorteile von Multi-Core-CPUs nicht nutzen können. Wenn Sie die Vorteile von Multi-Core-CPUs nutzen möchten, müssen Sie sich auf das Multiprozessmodell von Swoole verlassen .
Da die Zahl der Programmierer zunimmt, wachsen die großen Jungs natürlich weiterhin explosionsartig Was sollten wir also tun? Basierend auf dem Thread-Konzept sollten wir natürlich eine Reihe leichter Threads implementieren, die leichter und besser für Cheating-Stars geeignet sind (tatsächlich können Coroutinen nicht vollständig als Threads betrachtet werden, da ein Thread dies kann). haben mehrere Coroutinen)
Threads Kernelstatus
Planungsmethode
Die Planungsmethode von Coroutinen ist die kollaborative Planung. Sie wird nicht vom Kernel gesteuert und durch die kostenlose Richtlinienplanung umgeschaltet. Empfohlenes Lernen:
Swoole-TutorialDas obige ist der detaillierte Inhalt vonWas bedeutet Swoole-Coroutine?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!