Web Workers - Current Status
A quick one about workers after few tests.
As alternative, both Opera Mobile and Firefox Beta work without many problems.
About iOS, version 4 does not support workers while version 5 does and quite well.
On mobile side this is supported again by Opera Mobile and Firefox Beta without problems but on desktop, and not only ...
Current status, except for data URI, is that you may need webkitPostMessage rather than simply postMessage in order to at least optimize data transfer between global objects, but on the other hand, the dream we all have about "HTML5" keeps fading out every time I understand I need to prefix something, either if I use CSS3 or JavaScript (i.e. requestAnimationFrame).
Disappointed, nothing else to add.
Mobile
Workers are apparently nowhere in Android devices stock browsers. The only one able to bring workers seems to be Chrome in ICS.As alternative, both Opera Mobile and Firefox Beta work without many problems.
About iOS, version 4 does not support workers while version 5 does and quite well.
Desktop and Data URI
Workers are almost fine everywhere except IE9 ( surpriiiiiiiiiise ) but there is one thing not a single browser does except again Firefox and Opera, accepting "data:application/javascript;" with or without base64 encoded code.On mobile side this is supported again by Opera Mobile and Firefox Beta without problems but on desktop, and not only ...
- Safari works only with external files while inline data uri are supported only via file protocol
- WebKit nightly does not support inline data uri even through File protocol
- Chrome does not support inline data uri neither via file protocol nor online
- Safari Mobile does not support inline data uri, at least online
- Chrome Mobile does not support them at all
Why Bother With Data URI
Quite simple, Workers are a mechanism to detach some logic from the main thread and execute it in the background. The possibility to create inline Workers means we could create a sort of Threads manager, delegating runtime ad-hoc functions to perform certain tasks handling all requests from and to the main page.Workers Until Now Are Not Good
Not only the serialization and deserialization problem does not scale with large amount of data, probably the only reason you would think to use a worker for some job, but the DOM security exception thrown with data URI and for no reason on earth is yet another limit for this technique.Current status, except for data URI, is that you may need webkitPostMessage rather than simply postMessage in order to at least optimize data transfer between global objects, but on the other hand, the dream we all have about "HTML5" keeps fading out every time I understand I need to prefix something, either if I use CSS3 or JavaScript (i.e. requestAnimationFrame).
Disappointed, nothing else to add.
Comments
Post a Comment