Steffen W.: Multi-threading with web worker

Beitrag lesen

Vielen Dank fuer die Antwort,

hat mir schon etwas weiter geholfen. Ich werde es erst einmal mit einem worker versuchen und schauen, ob es sich dann lohnt, noch etwas mehr Performance herauszuholen.

Moin Steffem,

Nun meine Frage, die ich mit Google so einfach nicht beantworten konnte. Ist es sinnvoll, mehrer web worker gleichzeitig zu erstellen und die Arbeit zur Berechnung darauf zu verteilen, oder sollte ich nur einen web worker mit der Berechnung laufen lassen?

Bedenke aber: „Workers (as these background scripts are called herein) are relatively heavy-weight, and are not intended to be used in large numbers.“ (aus der Spec).

Ja, stimmt. Ich habe jetzt auch gelesen, dass zum Beispiel Chrome bei workers >50 schon Probleme bekommt und instabil wird.

Die Spec schreibt vor, dass ein „separate parallel execution environment“ erstellt wird, was das bedeutet überlässt sie aber dem Browser-Hersteller. Es könnte ein Thread sein oder aber auch ein neuer Prozess.

Es scheint also ganz so, als ob es hier darauf ankommt, wie gut oder schlecht der entsprechende Browser die Hardware nutzen kann. Gut zu wissen, dass es aber grundsaetzlich keine konkreteren Vorgaben gibt.

Allgemein bin ich aber schon sehr beeindruckt, was einem nun mit workern zur Verfuegung steht, dass vorher einfach nicht sinnvoll umzusetzen war. Ich muss jetzt nur noch herausfinden, ob es beim Worker auch zum "verschlucken" von messages kommen kann, wenn zum Beispiel der worker antwortet, aber die eigentlich Seite gerade viel Veraenderungen im Dom vornimmt. Aber dass geht wohl nur ueber testen ;-)

Vielen Dank noch einmal!