HTML 5 : Worker

C’est bien connu, javascript est mono thread, il est donc difficile d’effectuer de gros traitements sans interrompre l’interface utilisateur.

Selon la spécification HTML 5 des workers, un worker doit être implémenté pour effectuer des taches ayant un cycle de vie assez long.

Néanmoins il n’est pas exclu d’utiliser les Workers pour permettre d’effectuer des recherches, du parsing, etc….

Fonctionnement d’un worker

Un Worker s’initialise de la manière suivante :

  var worker = new Worker('worker.js');

Un Worker peut être implémenté n’importe où, cependant le code propre au worker doit se situer dans un fichier à part.

Fichier HTML

  var searcher = new Worker('searcher.js');
   function search(query) {
     searcher.postMessage(query);
   }

Fichier worker.js

  importScripts('io.js');
  onmessage = function (event) {
    postMessage(get('search.cgi?' + event.data));
  };

About Sébastien Renno