[whatwg] Worker feedback
Michael Nordman
michaeln at google.com
Mon Apr 6 10:04:16 PDT 2009
There are additional constraints that haven't been mentioned yet...
Plugins.
The current model for plugins is that they execute in a single-threaded
world. Chrome maintains that model by hosting each plugin in its own process
and RPC'ing method invocations back and forth between calling pages and the
plugin instances. All plugin instances (of a given plugin) reside on the
same thread.
Consider three threads
PageA
PageB
PluginC
PageA
-grabs storage lock
PluginC
-calls out to PageB (everything in NPAPI is synchronous)
-now waiting for PageB to return
PageB
-while handling the plugins callback, attempts to grab the storage lock
-BLOCKED waiting for PageA to release it
PageA
-calls plugin (sync method call)
-BLOCK waiting indirectly for PageB
== DEADLOCK
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.whatwg.org/pipermail/whatwg-whatwg.org/attachments/20090406/7c248d60/attachment-0002.htm>
More information about the whatwg
mailing list