Web Workers - Transferable Objects for JSON

Posted by kclem06 on Stack Overflow See other posts from Stack Overflow or by kclem06
Published on 2012-07-06T16:09:34Z Indexed on 2012/07/06 21:16 UTC
Read the original article Hit count: 368

Filed under:
|
|
|

HTML 5 Web workers are very slow when using worker.postMessage on a large JSON object. I'm trying to figure out how to transfer a JSON Object to a web worker - using the 'Transferable Objects' types in Chrome, in order to increase the speed of this.

Here is what I'm referring to and appears it should speed this up quite a bit: http://updates.html5rocks.com/2011/12/Transferable-Objects-Lightning-Fast

I'm having trouble finding a good example of this (and I don't believe I want to use an ArrayBuffer). Any help would be appreciated.

I'm imagining something like this:

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

var large_json = {};
for(var i = 0; i < 20000; ++i){
   large_json[i] = i;
   large_json["test" + i] = "string";
};

//How to make this call to use Transfer Objects? Takes approx 2 seconds to serialize this for me currently.
worker.webkitPostMessage(large_json);

© Stack Overflow or respective owner

Related posts about JavaScript

Related posts about JSON