JavaScript Multithreading in IE6?

8

Ist JavaScript-Multithreading in IE6 möglich?

Gibt es dafür Bibliotheken von Drittanbietern?

    
Dilip 15.03.2010, 22:25
quelle

6 Antworten

11

JavaScript unterstützt kein natives Multithreading in aktuellen Webbrowsern. Selbst wenn es so wäre, ich wette, IE 6 hätte es nicht unterstützt:)

Das Ausführen Ihrer Skripts in mehreren Iframes könnte eine Umgehungslösung sein, z. B. Jason Kester vorgeschlagen in einer anderen Antwort .

Außerdem ist es für moderne Browser vielleicht interessant, sich Web Workers anzuschauen, aber das ist definitiv nicht in Ordnung die Liga des IE 6:

Daniel Vassallo 15.03.2010 22:27
quelle
3

Führen Sie Ihre Aufgaben in IFrames aus

Angenommen, Sie sprechen auf der Clientseite über Multitasking, können Sie auf Ihrer Seite n Frames öffnen, die jeweils auf eine Seite in Ihrer Domain zeigen.

Es gibt viele Möglichkeiten, es von dort zu gestalten. Wahrscheinlich wäre es am einfachsten, eine einzige .js-Include-Datei zu haben, die Sie von jedem Frame aus ausführen. Es ruft nach Hause zu parent.readyToGo () oder was auch immer, und bekommt etwas Arbeit zugewiesen. Die Worker-Methoden können etwas wie parent.taskFinished () aufrufen, um einen Bericht zu erstellen, wenn sie fertig sind.

Am wichtigsten ist, hören Sie niemandem zu, der Ihnen mitteilt, dass Sie Ihre missionskritische Multithread-Javascript-Anwendung nicht auf IE6 laufen lassen sollten. Ich bin sicher, du hast gute Gründe:)

    
Jason Kester 15.03.2010 22:48
quelle
2

Es gibt keinen Weg - definitiv nicht in IE6. Sie können es fälschen, indem Sie viele window.setTimeout() s verwenden.

Siehe Warum unterstützt JavaScript kein Multithreading?

    
Andras Vass 15.03.2010 22:29
quelle
2

Nun, HTML5 kommt mit Web-Workern auf. Aber ich bezweifle stark, dass es eine Bibliothek gibt, die einen Wrapper für die Verwendung in IE6 erstellt.

Unterstützt mein Browser Web-Worker?

    
N 1.1 15.03.2010 22:41
quelle
1

Google Gears ist ein Plugin, das mit IE6 funktioniert und etwas enthält, das WorkerPools genannt wird. Google Gears scheint nicht mehr so ​​aktiv entwickelt zu werden, weil es versucht hat, die meisten Ideen von Gears in HTML5 zu übertragen. WorkerPools sind im Grunde Hintergrundprozesse, die den Status nicht teilen und nur über Nachrichten kommunizieren. In HTML5 hat sich dies in WebWorker verwandelt. Weitere Informationen finden Sie hier: Ссылка

    
Russell Leggett 15.03.2010 22:35
quelle
1

Wenn Sie nur synchronen Code schreiben und damit vermeiden möchten, dass Event-Handler überall beschrieben werden, können Sie versuchen: Stränge

    
Dark Falcon 15.03.2010 22:42
quelle

Tags und Links