Web Worker sind neu in HTML5 und eine Technologie zur Implementierung der Hintergrundverarbeitung in Webanwendungen
In HTML4 sind alle von js erstellten Programme Single-Threaded. Wenn es lange dauert, reagiert die Weboberfläche lange nicht. Im schlimmsten Fall wird ein Skript-Eingabeaufforderungsfeld angezeigt:
Meldung, dass die Ausführung des Skripts zu lange dauert. Möchten Sie fortfahren? . . . Dies bringt uns zum Protagonisten dieses Artikels: Web Workers API
Mit dieser API können Benutzer ganz einfach Threads erstellen, die im Hintergrund laufen:
Kopieren Sie den Code
Als ich früher die Datei-API lernte, gab es einen Vorgang zum Lesen lokaler Dateien. Wenn die Datei zu groß ist, frage ich mich, ob dies angewendet werden kann. Es ist notwendig, es beim zweiten Lernen auszuprobieren.
Interaktion von Daten mit Threads
Wir vervollständigen hier eine Funktion, generieren zufällig ein Array im Vordergrund und berechnen dann im Hintergrund, dass es in 3 geteilt werden kann und zum Drucken in den Vordergrund zurückkehrt:
Code kopieren
程序逻辑描述:
这里用了个线程嵌套
首先执行前台程序,这里初始化了一个子线程„t1“用于将100个数组初始化
然后子线程t1又初始化了子线程t2(用于遍历数组,取出能被3整除的数字,组成字符串),t1将数组数据传给t2
t2 接收t1数据,计算后将将字符串转给t1,t1转给前台,前台执行自己的逻辑
流程结束
结语结果皆可.
这里看来, 结合上次的通信API Web Sockets,可以将2个结合做一个网页聊天程序,甚至还可以将本地存储/本地数据库一些东西用到.
这个样子可能是个不错的东西.