jinroh/kadoh — Issue #35: Using WebWorkers ?
Author: jinroh
Created: 2011-11-25 10:08:35+00:00
State: open

Maybe we could use webworkers to run our node object since we don't need any DOM access and we would take advantage of multithreading.

[stackoverflow](http://stackoverflow.com/questions/2773682/what-are-the-use-cases-for-web-workers)

> * John Resig (of jQuery fame) has a bunch of interesting examples of using web workers here - games, graphics, crypto.
> * Another use is Web I/O - in other words, polling URLs in background. That way you don't block the UI waiting for polling results.
> * Another practical use: in Bespin, they’re using Web Workers to do the syntax highlighting, which you wouldn’t want to block your code editing whilst you’re using the app.
> * From Mozilla: One way workers are useful is to allow your code to perform processor-intensive calculations without blocking the user interface thread.
> As a practical example, think of an app which has a large table of #s (this is real world, BTW - taken from an app I programmed ~2 years ago). You can change one # in a table via inpput field and a bunch of other numbers in different columns get re-computed in a fairly intensive process.
> The old workflow was: Change the #. Go get coffee while JavaScript crunches through changes to other numbers and the web page is unresponsive for 3 minutes - after I optimized it to hell and back. Get Back with coffee. Change a second #. Repeat many times. Click SAVE button.
> The new workflow with the workers could be: Change the #. Get a status message that something is being recomputed but you can change other #s. Change more #s. When done changing, wait till status changes to "all calculations complete, you can now review the final #s and save".