While poking around the Web Worker API in the latest Opera Beta Release, I discovered that they had also implemented support for Shared Web Workers. If you’re not familiar with Shared Web Workers, have a look here. The basic premise is that a Shared Worker can have multiple connections made to one Worker. Paraphrased from […]

Tagged:

One of the questions that came up in the Processing track was: “Can you pass the image data from a Canvas to a Web-Worker for processing?” My assumption was “yes” as the specs declare you can paste any complex object to and from workers so long as you’re not trying to pass a DOM element. […]

Tagged:

Opera 10.60 Beta was announced this week and along with the list of new HTML5 features it’s supporting was Web Workers. Of course I was excited to run it through the renderer/worker test suite I set up for my previous posts about Safari 5 and Chrome 5. The results were pleasing, the first Opera release […]

Tagged:

Following the announcement of Safari 5 [ 5.0 (7533.16) ] today, I did some due diligence and ran it through the json-object, array, boolean and string Worker message cases that I had produced for testing against Chrome 5. The results are in and thankfully consistent – so not much to report here accept that – […]

Tagged:

…Not natively… but this will work in the meantime: Git it here firefox-event-source.js ;(function (w) { if ( !w['EventSource'] ) { // parseUri 1.2.2 // (c) Steven Levithan <stevenlevithan.com> // MIT License var parseUri = function(str) { var o = { key: ['source','protocol','authority','userInfo','user','password','host','port','relative','path','directory','file','query','anchor'], q: { name: 'queryKey', parser: /(?:^|&amp;)([^&amp;=]*)=?([^&amp;]*)/g }, parser: { strict: /^(?:([^:\/?#]+):)?(?:\/\/((?:(([^:@]*)(?::([^:@]*))?)?@)?([^:\/?#]*)(?::(\d*))?))?((((?:[^?#\/]*\/)*)([^?#]*))(?:\?([^#]*))?(?:#(.*))?)/ } […]

Tagged:

About a month ago, I released jQuery.Hive/Pollen, a plugin + library for developing jQuery applications that use Web Workers. And as per usual, the number one question is “what can I do with workers?”. With that in mind, I decided that at least every month (and hopefully even more frequently then that) I would produce […]

Tagged:

This is mighty awesome. I’ve put together some test demos, to run them you’ll first need to get this Chromium build: 47357 WIN32 47357 MAC 47357 32-Bit Linux 47357 32-Bit Linux Then download these: https://gist.github.com/415116 client.html <script src="event-source.js"></script>; event-source.js document.addEventListener('DOMContentLoaded', function () { var eventSrc = new EventSource('events.php'); eventSrc.addEventListener('open', function (event) { console.log(event.type); }); eventSrc.addEventListener('message', […]

Tagged:

After updating to Chrome 5 (specifically 5.0.375.55) last night I immediately ran some tests to see if the Web Worker API had been updated to support postMessage() arguments of types other than string. Turns out, it had. Here’s the test, plus the results: https://gist.github.com/414901 renderer.html <script src="renderer.js"></script> renderer.js var worker = new Worker('worker.js'); worker.addEventListener('message', function […]

Tagged:

I’m a jQuery enthusiast. Maybe even an evangelist. So I decided to make workers easy for my fellow jQuery developers – and thus was born the jQuery.Hive. Inititally it began it’s life as PollenJS a jQuery-looking library of functions that were light, useful and thread-safe. This was before the WebKit implementation existed so everything was […]

Tagged:

As I mentioned in Part I, the Web Worker API is available for use in Firefox 3.5+, Safari 4+ and Chrome 4+, however the implementations are inconsistant. This has been completely overlooked by every single tutorial I’ve found. The issue revolves around the accepted argument to postMessage() (from both the main window and the worker). […]

Tagged: