[whatwg] providing a DOM API to workers without a thread-safe DOM implementation
David Bruant
bruant at enseirb-matmeca.fr
Wed Dec 9 10:46:20 PST 2009
> On Mon, 7 Dec 2009, David Bruant wrote:
>
>>> Plus, since browsers don't have thread-safe DOM implementations, we
>>> actually can't expose the DOM in workers. Maybe one day. :-)
>>>
>> I'm sorry for the misunderstanding. I shouldn't have said "the DOM API".
>> To be as accurate as I can be I want to provide the DOMImplementation
>> interface (http://www.w3.org/TR/DOM-Level-3-Core/core.html#ID-102161490)
>> to the workers. As I'm going to explain, the point is to be able to
>> create a document and then a documentFragment.
>>
> Since browsers don't have thread-safe DOM implementations, that's
> basically a non-starter. It doesn't matter that we aren't offering access
> to the same DOM in pages and workers; the actual innards of the DOM
> implementations aren't thread safe.
>
> As soon as browsers are able to implement this, I'm sure it will be added
> to the spec.
>
=> The point of my "Re: [whatwg] [WebWorkers] Advocation to provide the
DOM API to the workers" e-mail of the December 7th was to prove that we
don't even need a thread-safe implementation.
The requirement is just to have 2 implementations (which can be the
same, but it would be a "coincidence") one for the main browsing
context, the other for workers. Then, I'm describing a way to
communicate (through postMessage and the onmessage handler) which allow
to send and recieve DOM objects (Node/Element/Document/DocumentFragment)
in a safe way (basically, by breaking the references to DOM objects
coming from another implementation and I think that I have enumerated
all of them and found a proper solution for each).
I think that what I describe can be implemented without a thread-safe
implementation (so, it could be already implemented today).
David
More information about the whatwg
mailing list