W3C home > Mailing lists > Public > whatwg@whatwg.org > August 2009

[whatwg] Global Script proposal.

From: Jeremy Orlow <jorlow@chromium.org>
Date: Tue, 18 Aug 2009 14:45:17 -0700
Message-ID: <5dd9e5c50908181445k1af89641xab8ae53c84a60783@mail.gmail.com>
On Tue, Aug 18, 2009 at 12:32 PM, Aaron Boodman <aa at google.com> wrote:

> On Tue, Aug 18, 2009 at 12:20 PM, Mike Wilson<mikewse at hotmail.com> wrote:
> > Michael Nordman wrote:
> >
> > On Tue, Aug 18, 2009 at 6:07 AM, Mike Wilson <mikewse at hotmail.com>
> wrote:
> >>
> >> Threading:
> >> This is the unavoidable question ;-) How do you envision
> >> multiple threads accessing this shared context to be
> >> coordinated?
> >
> > Nominally, they don't. In our design for chrome's multi-process
> > architecture, the global-script would only be shared within a single
> > 'renderer' process (in which all page's, and global-scripts, execute in a
> > single thread).
> >
> > This might not be the same in other browsers. I think you need to define
> how
> > concurrent access should be handled so it can be applied to f ex a
> browser
> > using a single process but a thread per top-level window. If I understand
> > correctly it would be something like letting only one thread call inside
> the
> > GlobalScript context at a time?
>
> I think it is likely impractical for windows that have javascript
> access to each other to be on separate threads.
>
> The relationship between the global script and pages accessing it is
> similar to a parent windows and an iframe that are on the same origin,
> or to a window and a popup window on the same origin.
>
> Objects should be able to be freely passed across both sides. For
> example, the global script should be able to have a JavaScript object
> graph which represents some application state and share it (by
> reference) with its clients.
>
> I don't see how it is realistic to do this when the windows are
> separated by a thread boundary.
>
> Therefore, I would say it is totally valid for a UA to put a bunch of
> windows that want to use the same global script URL in different
> threads, but it should group them by thread. Each thread should get
> its own global script that is shared among the windows that are on
> that thread.


Btw, I thought I'd just point out that the proposal mentions this case:
 "From the proposal text: "All pages connected to the same Global Script
should run on the same thread, in the same process.  Since this is not
always technically possible, it should be legal (and not break the
applications) for there to be duplicate global script contexts within a UA".
 I'm glad this came up, however, since now it's more clear why such language
is necessary.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.whatwg.org/pipermail/whatwg-whatwg.org/attachments/20090818/8716c9e6/attachment.htm>
Received on Tuesday, 18 August 2009 14:45:17 UTC

This archive was generated by hypermail 2.4.0 : Wednesday, 22 January 2020 16:59:15 UTC