Asynchron: Gegenwart und Zukunft
Blockiertes Programm
Sie können JavaScript Programm in a schreiben separate js -Datei, dieses Programm besteht aus mehreren Blöcken, nur einer dieser Blöcke
wird jetzt ausgeführt, der Rest wird übernommen zur Ausführung, und die häufigste Blockeinheit ist eine Funktion.
Zum Beispiel:
function now() { return 21; } function later() { answer = answer * 2; console.log("Meaning of life:", answer); } var answer = now(); setTimeout (later,1000); // Meaning of life: 42 现在: function now() { return 21; } function later() {...} setTimeout(later,1000); setTimeout(later,1000); 将来: answer = answer * 2; console.log("Meaning of life:", answer);
Asynchrone Konsole
Ereignisschleife
Befassen Sie sich mit den Zeitlücken in der Gegenwart und in der Zukunft , während es bei der Parallelität um Dinge geht, die gleichzeitig passieren können.
Die gebräuchlichsten Werkzeuge für paralleles Rechnen sind Prozesse und Threads, die unabhängig voneinander ausgeführt werden und möglicherweise gleichzeitig ausgeführt werden Verschiedene Mehrere Prozesse können den Speicher eines einzelnen Prozesses gemeinsam nutzen, auch auf verschiedenen Prozessoren.
Parallelität
Zwei oder mehr "
Prozesse"
Parallelität tritt bei gleichzeitiger Ausführung auf, unabhängig davon, ob die einzelnen Vorgänge, aus denen sie bestehen, parallel ausgeführt werdenParallelität kann als "Prozess angesehen werden „
und Parallelität im Gegensatz zur Parallelität auf rechnerischer Ebene.Nicht interaktiv Zwei oder mehr "
Prozesse"
Wenn ihre Schritte gleichzeitig und abwechselnd innerhalb desselben Programms/ ausgeführt werden und diese Aufgaben nicht miteinander in Zusammenhang stehen, müssen sie nicht unbedingt interagieren . Interaktion Häufiger gleichzeitige „
Prozesse“
müssen durch die Interaktion zwischenDOM miteinander kommunizieren. Zusammenarbeit Nehmen Sie einen Prozess mit langer Laufzeit und teilen Sie ihn in Schritte oder Stapel auf, sodass andere gleichzeitig ablaufen"
Prozesse"
haben die Möglichkeit, ihre eigenen Vorgänge in die Ereignisschleifenwarteschlange einzufügen, um sie abwechselnd auszuführen.Aufgaben werden nach jedem Tick
der Ereignisschleifenwarteschlange in jederaufgehängt kreuzen Sie
an, es kann sein, dassdas Eintreten einer asynchronen Aktion nicht dazu führt, dass dem neuen Ereignis ein völlig neues Ereignis hinzugefügt wird Das Häkchen des fügt ein Element am Ende der Aufgabenwarteschlange hinzu.
Die Reihenfolge der Anweisungen Die Reihenfolge der Anweisungen im Code stimmt nicht unbedingt mit der Reihenfolge der von JavaScript ausgeführten Anweisungen überein Motor.
Nachdem die JavaScript--Engine diesen Code kompiliert hat, stellt sie möglicherweise fest, dass es möglich ist, die Geschwindigkeit zu verbessern, indem die Reihenfolge dieser Anweisungen
geändert wird. Rückruf
Ausführung und Planung Verschachtelte Rückrufe und verkettete Rückrufe Vertrauensprobleme
Das obige ist der detaillierte Inhalt vonEinführung in unbeliebtes Wissen über JavaScript. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!