Heim > Artikel > Web-Frontend > Verstehen Sie die Ereignisschleife von Node in einem Artikel
In diesem Artikel geht es um die Ereignisschleife in Nodejs. Ich hoffe, dass er jedem hilft, die Ereignisschleife in Nodejs zu verstehen. Von nun an werden Sie keine Angst mehr vor der Frage des Interviewers haben: Sprechen Sie über die Ereignisschleife in Nodejs!
Ich denke, jeder wird während des Interviews vom Interviewer gefragt: „Erzählen Sie mir etwas über die Ereignisschleife von Nodejs.“
Weil mir diese Frage auch gestellt wurde, aber jedes Mal ist es mir peinlich.
Es gibt viele Einführungen in verschiedenen technischen Blogs zu diesem Thema, aber ich habe es nie verstanden. Denn diese Artikel beginnen oft mit vielen Diagrammen und Fachbegriffen, was den Mut zum Verstehen sofort erstickt. [Empfohlene verwandte Tutorials: nodejs-Video-Tutorial, Programmierunterricht]
Aber ich konnte es nicht verstehen, der Interviewer fragte trotzdem, also habe ich mit Tränen und zusammengebissenen Zähnen einige Tutorials konsultiert und mir die Zusammenfassung besorgt wird umgehend mit allen geteilt.
Mit einem Wort: Die Ereignisschleife ist der Mechanismus für Nodejs, um asynchrone Vorgänge abzuwickeln.
Js ist Single-Threaded. Warum kann Nodejs asynchrone Vorgänge verarbeiten?
Weil Nodejs Multithread-Operationen an den Systemkern übergibt.
Bild oben:
Nodejs ist wie ein intelligentes Kind. Es kann keine Multithread-Operationen basierend auf Js selbst implementieren, aber es wirft Multithread-Operationen an den Systemkern.
Da die meisten Systemkerne Multithread-fähig sind und der Kernel nicht so einfach auszuführen ist, können sich Nodejs dann zurücklehnen und entspannen?
(Erklären Sie zunächst den Namen der Ereignisschleife. Nodejs ist ereignisgesteuert. Wann und wann etwas getan werden soll, wird in der Rückruffunktion definiert;
Daher kann die Rückruffunktion als Ereignisverarbeitungsfunktion definiert werden; also Rückrufe verwalten Der Mechanismus der Funktion wird als Ereignisschleife bezeichnet;)
Kann Nodejs nichts tun, da der Kernel so leistungsfähig ist?
Nein, nachdem die Kernel-Ausführung abgeschlossen ist, muss Nodejs die entsprechende Rückruffunktion ausführen.
Wir brauchen also einen Mechanismus, der dabei hilft, diese Rückruffunktionen für asynchrone Vorgänge zu verwalten und aufrechtzuerhalten, um zu verhindern, dass sie miteinander kämpfen und Fehler verursachen.
So effizient umgesetzt. Deshalb ist ---Ereignisschleife--- erforderlich.
Zusammenfassung: Die Ereignisschleife wird von Nodejs verwendet, um die Ausführungsreihenfolge asynchroner Coderückrufe zu steuern!
Seltsam? Warum gibt es kein process.nectTick?
Haha, das liegt daran, dass „process.nectTick“ selbst seltsam ist!
process.nectTick
Obwohl process.nectTick eine asynchrone API ist, ist sie nicht Teil der Ereignisschleife.Hier handelt es sich um ein weiteres Konzept:
Asynchrones Modul!Asynchrones Modul
ist dieser magische Typ, der die
libuvWie viel hat das mit Process.nectTick zu tun?
Das obige ist der detaillierte Inhalt vonVerstehen Sie die Ereignisschleife von Node in einem Artikel. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!