Heim Web-Frontend js-Tutorial Im Hintergrund ausgeführter JavaScript-Thread – Web Worker

Im Hintergrund ausgeführter JavaScript-Thread – Web Worker

Jun 25, 2017 am 09:28 AM
web worker Was

Um es einfach auszudrücken: Web Worker ist ein JavaScript-Thread, der im Hintergrund läuft und keinen Einfluss auf die Antwort der Seite hat.

Wir wissen, dass JavaScript eine Single-Threaded-Skriptsprache ist, das heißt, sie kann nur eine Sache gleichzeitig ausführen, da es sonst zu äußerst komplexen Synchronisationsproblemen kommt. Beispielsweise verfügt JavaScript über zwei Threads gleichzeitig. Ein Thread ist für das Hinzufügen von Inhalten zu einem bestimmten DOM-Knoten verantwortlich, und der andere Thread löscht den Knoten. Welchen Thread sollte der Browser zu diesem Zeitpunkt als Hauptthread verwenden?

Um das Problem der Synchronisationskomplexität zu vermeiden, ist JavaScript seit seiner Geburt Single-Threaded, was auch ein Merkmal dieser Sprache ist.

Der Single-Thread-Mechanismus von JavaScript verursacht ein Problem. Wenn einige sehr komplexe Aufgaben verarbeitet werden müssen, muss die Seite warten, bis die Aufgabe abgeschlossen ist, bevor sie auf den Vorgang des Benutzers reagieren kann Dies hat negative Auswirkungen auf die Reaktion der Seite und das Benutzererlebnis. Um dieses Problem zu lösen und die Rechenleistung von Multi-Core-CPUs zu nutzen, hat HTML5 den Web Worker-Standard vorgeschlagen um mehrere Threads zu erstellen, aber diese neu erstellten Threads werden als untergeordnete Threads verwendet und unterliegen vollständig der Haupt-Thread-Kontrolle. Und es ist nicht erlaubt, das DOM zu betreiben. Tatsächlich ist es immer noch Single-Threaded-Typ. Daher können wir einige zeitaufwändige Aufgaben an den vom Web Worker erstellten untergeordneten Thread übergeben, um ihn im Hintergrund auszuführen, während die Vordergrundseite weiterhin die Antwort des Benutzers verarbeiten kann.

Da es sich bei dem von Web Worker erstellten Thread um einen eingeschränkten Unterthread handelt, gelten einige Nutzungsbeschränkungen:

  • Web Worker kann nicht auf DOM-Knoten zugreifen

  • Web Worker kann nicht auf globale Variablen oder globale Funktionen zugreifen

  • Web Worker kann keine Funktionen wie „alert()“ oder „confirm“ aufrufen; 🎜>

    Web Worker kann nicht auf globale Browservariablen wie Fenster und Dokument zugreifen.
  • Javascript in Web Worker kann jedoch weiterhin die Klassenfunktionen setTimeout() und setInterval() verwenden Verwenden Sie auch XMLHttpRequest-Objekte für die Ajax-Kommunikation.
Web Worker werden derzeit von allen gängigen Browsern außer Internet Explorer unterstützt.

Freunde, die mit Angular vertraut sind, sollten wissen, dass Angular1 am meisten wegen seines Dirty-Checking-Mechanismus kritisiert wird. Wenn der Bereich zu viele Daten hat, wird die Leistung ernsthaft beeinträchtigt. Angular2 verwendet WebWorker, um schwere Berechnungsarbeiten in den Hilfsthread zu verlagern, sodass der Schnittstellenthread nicht beeinträchtigt wird.

Das obige ist der detaillierte Inhalt vonIm Hintergrund ausgeführter JavaScript-Thread – Web Worker. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

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

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

Video Face Swap

Video Face Swap

Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen

Java-Tutorial
1653
14
PHP-Tutorial
1251
29
C#-Tutorial
1224
24
So richten Sie die Tastatur-Boot-Funktion auf einem GIGABYTE-Motherboard ein (aktivieren Sie den Tastatur-Boot-Modus auf dem GIGABYTE-Motherboard) So richten Sie die Tastatur-Boot-Funktion auf einem GIGABYTE-Motherboard ein (aktivieren Sie den Tastatur-Boot-Modus auf dem GIGABYTE-Motherboard) Dec 31, 2023 pm 05:15 PM

So richten Sie den Tastaturstart auf dem Motherboard von Gigabyte ein. Wenn es den Tastaturstart unterstützen muss, muss es sich um eine PS2-Tastatur handeln! ! Die Einstellungsschritte sind wie folgt: Schritt 1: Drücken Sie Entf oder F2, um das BIOS nach dem Booten aufzurufen, und rufen Sie den Advanced-Modus (Normal) des BIOS auf. Standardmäßig wechseln Sie in den EZ-Modus (Easy) des Motherboards Drücken Sie F7, um in den erweiterten Modus zu wechseln. Motherboards der ROG-Serie rufen standardmäßig den erweiterten Modus auf (zur Demonstration verwenden wir vereinfachtes Chinesisch). Schritt 2: Wählen Sie „Erweitert“ – „Erweiterte Energieverwaltung (APM)“. Suchen Sie die Option [Aufwecken durch PS2-Tastatur] Schritt 4: Diese Option ist standardmäßig deaktiviert. Nach dem Herunterziehen sehen Sie drei verschiedene Einstellungsoptionen: Drücken Sie die [Leertaste], um den Computer einzuschalten, und drücken Sie die Gruppe

Was ist die beste Grafikkarte für i7 3770? Was ist die beste Grafikkarte für i7 3770? Dec 29, 2023 am 09:12 AM

Welche Grafikkarte eignet sich für den Core i73770? Die RTX3070 ist eine sehr leistungsstarke Grafikkarte mit hervorragender Leistung und fortschrittlicher Technologie. Egal, ob Sie Spiele spielen, Grafiken rendern oder maschinelles Lernen durchführen, der RTX3070 kommt damit problemlos zurecht. Es nutzt die Ampere-Architektur von NVIDIA, verfügt über 5888 CUDA-Kerne und 8 GB GDDR6-Speicher, was für ein flüssiges Spielerlebnis und hochwertige Grafikeffekte sorgen kann. RTX3070 unterstützt außerdem die Raytracing-Technologie, die realistische Licht- und Schatteneffekte darstellen kann. Alles in allem ist die RTX3070 eine leistungsstarke und fortschrittliche Grafikkarte, die für diejenigen geeignet ist, die hohe Leistung und hohe Qualität anstreben. RTX3070 ist eine Grafikkarte der NVIDIA-Serie. Verwendung von NVID der 2. Generation

Auswahl des richtigen Tablets für Musikstudenten Auswahl des richtigen Tablets für Musikstudenten Jan 10, 2024 pm 10:09 PM

Welches Tablet eignet sich für Musiker? Der 12,9-Zoll-Lautsprecher im iPad von Huawei ist ein sehr gutes Produkt. Es verfügt über vier Lautsprecher und die Klangqualität ist ausgezeichnet. Darüber hinaus gehört es zur Pro-Serie, die etwas besser ist als andere Modelle. Insgesamt ist das iPad Pro ein sehr gutes Produkt. Der Lautsprecher dieses Mini4-Mobiltelefons ist klein und die Wirkung ist durchschnittlich. Eine externe Musikwiedergabe ist damit nicht möglich, für den Musikgenuss ist man dennoch auf Kopfhörer angewiesen. Kopfhörer mit guter Klangqualität haben eine etwas bessere Wirkung, aber billige Kopfhörer im Wert von dreißig oder vierzig Yuan können die Anforderungen nicht erfüllen. Welches Tablet sollte ich für elektronische Klaviermusik verwenden? Wenn Sie ein iPad größer als 10 Zoll kaufen möchten, empfehle ich die Verwendung von zwei Anwendungen, nämlich Henle und Piascore. Zur Verfügung gestellt von Henle

So implementieren Sie die Formularvalidierung für Webanwendungen mit Golang So implementieren Sie die Formularvalidierung für Webanwendungen mit Golang Jun 24, 2023 am 09:08 AM

Die Formularvalidierung ist ein sehr wichtiger Link bei der Entwicklung von Webanwendungen. Sie kann die Gültigkeit der Daten vor dem Absenden der Formulardaten überprüfen, um Sicherheitslücken und Datenfehler in der Anwendung zu vermeiden. Die Formularvalidierung für Webanwendungen kann einfach mit Golang implementiert werden. In diesem Artikel wird erläutert, wie Sie mit Golang die Formularvalidierung für Webanwendungen implementieren. 1. Grundelemente der Formularvalidierung Bevor wir uns mit der Implementierung der Formularvalidierung befassen, müssen wir die Grundelemente der Formularvalidierung kennen. Formularelemente: Formularelemente sind

Was sind Webstandards? Was sind Webstandards? Oct 18, 2023 pm 05:24 PM

Webstandards sind eine Reihe von Spezifikationen und Richtlinien, die vom W3C und anderen verwandten Organisationen entwickelt wurden. Sie umfassen die Standardisierung von HTML, CSS, JavaScript, DOM, Web-Zugänglichkeit und Leistungsoptimierung , Wartbarkeit und Leistung. Das Ziel von Webstandards besteht darin, die konsistente Anzeige und Interaktion von Webinhalten auf verschiedenen Plattformen, Browsern und Geräten zu ermöglichen und so ein besseres Benutzererlebnis und eine bessere Entwicklungseffizienz zu gewährleisten.

Wählen Sie die Treiberversion, die zu Ihrem RX580 passt Wählen Sie die Treiberversion, die zu Ihrem RX580 passt Dec 29, 2023 pm 05:34 PM

Welcher Treiber eignet sich für die Installation auf rx5808g? 20.5.1 und 20.4.2WHQL beziehen sich auf die Versionsnummer der Software oder des Treibers. Diese Versionsnummern werden normalerweise verwendet, um Updates oder Fixes für Software oder Treiber zu identifizieren. In der Computerwelt steht WHQL für Windows Hardware Quality Labs, eine Einrichtung, die von Microsoft genutzt wird, um die Konformität und Stabilität von Hardware und Treibern zu testen und zu verifizieren. Daher geben 20.5.1 und 20.4.2WHQL an, dass diese Software oder Treiber die Tests und Verifizierungen von Microsoft bestanden haben und sicher im Windows-Betriebssystem verwendet werden können. AMDrx580-Grafikkarte relativ stabile Treiber 20.5.1 und 20.4.2WHQL bezieht sich auf die Versionsnummer der Software oder des Treibers. Diese Versionsnummern werden übergeben

Welche Spiele eignen sich zum Spielen mit i34150 und 1G-unabhängiger Grafik (welche Spiele sind für i34150 geeignet) Welche Spiele eignen sich zum Spielen mit i34150 und 1G-unabhängiger Grafik (welche Spiele sind für i34150 geeignet) Jan 05, 2024 pm 08:24 PM

Welche Spiele können mit dem i34150 mit 1G-unabhängiger Grafik gespielt werden? Kann er kleine Spiele wie LoL spielen? GTX750 und GTX750TI sind sehr geeignete Grafikkarten. Wenn Sie nur ein paar kleine Spiele spielen oder keine Spiele spielen, empfiehlt sich die Verwendung der integrierten i34150-Grafikkarte. Im Allgemeinen ist der Preisunterschied zwischen Grafikkarten und Prozessoren nicht sehr groß, daher ist es wichtig, eine vernünftige Kombination zu wählen. Wenn Sie 2 GB Videospeicher benötigen, wird empfohlen, GTX750TI zu wählen. Wenn Sie nur 1 GB Videospeicher benötigen, wählen Sie einfach GTX750. Die GTX750TI kann als verbesserte Version der GTX750 mit Übertaktungsfunktionen angesehen werden. Welche Grafikkarte mit dem i34150 gekoppelt werden kann, hängt von Ihren Anforderungen ab. Wenn Sie eigenständige Spiele spielen möchten, empfiehlt es sich, einen Wechsel der Grafikkarte in Betracht zu ziehen. du kannst wählen

So aktivieren Sie den administrativen Zugriff über die Cockpit-Web-Benutzeroberfläche So aktivieren Sie den administrativen Zugriff über die Cockpit-Web-Benutzeroberfläche Mar 20, 2024 pm 06:56 PM

Cockpit ist eine webbasierte grafische Oberfläche für Linux-Server. Es soll vor allem neuen/erfahrenen Benutzern die Verwaltung von Linux-Servern erleichtern. In diesem Artikel besprechen wir die Cockpit-Zugriffsmodi und wie Sie den Administratorzugriff von CockpitWebUI auf das Cockpit umstellen. Inhaltsthemen: Cockpit-Eingabemodi Ermitteln des aktuellen Cockpit-Zugriffsmodus Aktivieren des Verwaltungszugriffs für das Cockpit über CockpitWebUI Deaktivieren des Verwaltungszugriffs für das Cockpit über CockpitWebUI Fazit Cockpit-Eingabemodi Das Cockpit verfügt über zwei Zugriffsmodi: Eingeschränkter Zugriff: Dies ist die Standardeinstellung für den Cockpit-Zugriffsmodus. In diesem Zugriffsmodus können Sie vom Cockpit aus nicht auf den Webbenutzer zugreifen

See all articles