[whatwg] Worker feedback
michaeln at google.com
Mon Mar 30 19:13:53 PDT 2009
> I think it makes sense to treat dedicated workers as simple subresources,
not separate browsing contexts, and that they should thus just use the
application cache of their parent browsing contexts. This is what WebKit
does, according to ap.
> I've now done this in the spec.
Sounds good. I'd phrase it a little differently though. Dedicated worker do
have a browsing context that is distinct from their parents, but the
selected for a dedicated worker context is identical to the appacache
for the parents context.
> For shared workers, I see these options:
> - Not allow app caches, so shared workers don't work when offline. That
> - Same as suggested for dedicated workers above -- use the creator's
cache, so at least one client will get the version they expect. Other
clients will have no idea what version they're talking to, the creator
would have an unusual relationship with the worker (it would be able
to call swapCache() but nobody else would), and once the creator goes
away, there will be a zombie relationship.
> - Pick an appcache more or less at random, like when you view an image in
a top-level browsing context. Clients will have no idea which version
they're talking to.
> - Allow workers to specify a manifest using some sort of comment syntax.
Nobody knows what version they'll get, but at least it's always the
same version, and it's always up to date.
> Using the creator's cache is the one that minimises the number of clients
that are confused, but it also makes the debugging experience most differ
from the case where there are two apps using the worker.
> Using an appcache selected the same way we would pick one for images has
the minor benefit of being somewhat consistent with how window.open()
works, and we could say that window.open() and new SharedWorker are
> I have picked this route for now. Implementation feedback is welcome in
determining if this is a good idea.
Sounds good for now.
Ultimately, I suspect that additionally allowing workers to specify a
some sort of syntax may be the right answer. That would put cache selection
shared workers on par with how cache selection works for pages (not just
opened via window.open. As 'page' cache selection is refined due to
this system, those same refinements would also apply to 'shared worker'
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the whatwg