Domanda

Cerco scenarious mondo reale per l'utilizzo di Web Workers API .

È stato utile?

Soluzione

  • John Resig (di jQuery fama) ha una serie di interessanti esempi di utilizzo di lavoratori web qui - giochi, grafica, crypto

  • .
  • Un altro utilizzo è Web I / O - in altre parole, gli URL elettorali in background. In questo modo non bloccare l'interfaccia utente in attesa di risultati elettorali.

  • Un altro uso pratico: a Bespin, che stanno usando i lavoratori web per fare l'evidenziazione della sintassi, che potrebbe non voler bloccare modificare il codice mentre si sta utilizzando l'applicazione .

  • Mozilla : One way lavoratori sono utili è quello di consentire il codice per eseguire calcoli intensivo del processore senza bloccare il thread dell'interfaccia utente.

    Come esempio pratico, pensare a un app che ha un grande tavolo di #s (questo è mondo reale, BTW - tratto da un app ho programmato ~ 2 anni fa). È possibile modificare un # in una tabella con campo di input e un gruppo di altri numeri in colonne diverse ottenere ri-calcolato in un processo piuttosto intenso.

    Il vecchio flusso di lavoro è stato: Cambiare il #. Vai a prendere il caffè mentre scricchiolii JavaScript attraverso modifiche ad altri numeri e la pagina web non risponde per 3 minuti - dopo ho ottimizzato che all'inferno e ritorno. Get Back con il caffè. Modificare un secondo #. Ripetere tante volte. Fare clic pulsante SAVE.

    Il nuovo flusso di lavoro con i lavoratori potrebbe essere: Cambiare il #. Ottenere un messaggio di stato che qualcosa si sta ricalcolato, ma è possibile modificare altre #s. Cambiare più #s. Una volta fatto cambia, aspettare fino stato passa a "tutti i calcoli completa, ora è possibile rivedere i #s finali e risparmiare".

Altri suggerimenti

li ho utilizzati per l'invio di grandi quantità di dati dal browser al server. Ovviamente, si può fare questo con chiamate AJAX regolari, ma se questo occupa uno dei preziosi connessioni al nome host. Inoltre, se l'utente fa una pagina di transizione durante questo processo (per esempio fa clic su un link), gli oggetti il ??tuo JavaScript dalla pagina precedente andare via e non è possibile elaborare i callback. Quando si utilizza un lavoratore web, questa attività avviene fuori banda, in modo da avere la garanzia migliore che completerà.

Un altro Caso d'uso:

Compressione / De-compressione di file in background, se avete un sacco di immagini e altri file multimediali che vengono scambiati dal server in formato compresso.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top