Skip to content
Advertisement

Execute Background Task In Javascript

I have a cpu intensive task that I need to run on the client. Ideally, I’d like to be able to invoke the function and trigger progress events using jquery so I can update the UI.

I know javascript does not support threading, but I’ve seen a few promising articles trying to mimic threading using setTimeout.

What is the best approach to use for this? Thanks.

Advertisement

Answer

I had a similar problem to solve recently where i needed to keep my UI thread free while crunching some data to display.

I wrote a library Background.js to handle a few scenarios: a sequential background queue (based on the WorkerQueue library), a list of jobs where each is called on every timer, and an array iterator to help break up your work into smaller chunks. Examples and code here: https://github.com/kmalakoff/background

Enjoy!

User contributions licensed under: CC BY-SA
6 People found this is helpful
Advertisement