Hallo,
ich transformiere ein langes XML-Dokument mit JavaScript. Die Transformation dauert aber aufgrund der Laenge des Dokuments ca. 2 bis 3 Sekunden. Ich habe schon an der Code Basis sehr viel optimiert um die Transformtion so schnell wie moeglich zu machen, aber unter 2 bis 3 Sekunden komme ich nicht. Nun haette ich die Idee, das XML-Dokument parallel abzuarbeiten mit Hilfe von WebWorker. Also das XML-Dokument aufzuteilen und dann parallel abzuarbeiten.
DOM ist aber im WebWorker nicht verfuegbar, weil nicht threadsafe(?) - was ich nicht verstehe. Warum sollte ein auslesen von einem DOM ohne Modifikation des DOMs nicht threadsafe sein???? Eine Variante waere jetzt, das XML-Dokument in verschiedene Teile aufzspalten, dann diese XML-Segment mit Javascript in JSON umzuwandeln und die JSON-Segmente mit einem WebWorker abzuarbeiten.
Oder habe ich etwas uebersehen und es gibt doch Wege, einen "read-only" DOM im WebWorker zu nutzen/auszulesen?
Wenn ich mehrere WebWorker parallel anstosse, bedeutet das auch, dass dadurch automatisch die Arbeit der CPU auf die vorhandenen CPU-Kerne bzw. CPU Threads aufgeteilt wird?
Waere dankbar fuer Hinweise.