Bug 22723

Summary: Implement nested Workers
Product: WebKit Reporter: Alexey Proskuryakov <ap@webkit.org>
Component: HTML DOMAssignee: Jian Li <jianli@chromium.org>
Status: NEW    
Severity: Enhancement CC: dimich@chromium.org, dominik.rottsches@intel.com, jam@chromium.org, jarbon@chromium.org, jianli@chromium.org, jwbecher@gmail.com, li.yin@intel.com, mike@w3.org, wycats@gmail.com
Priority: P4 Keywords: InRadar
Version: 528+ (Nightly build)   
Hardware: All   
OS: All   
Bug Depends on: 25212, 25215, 25255, 25270, 25273    
Bug Blocks:    

Description From 2008-12-07 03:27:30 PST
It should be possible to create new Workers from Workers.

The main low-level functionality that is still missing is an ability to load resources from Workers, same as in XMLhttpRequest and importScripts().
------- Comment #1 From 2008-12-07 03:59:22 PST -------
<rdar://problem/6425810>
------- Comment #2 From 2009-04-14 02:25:32 PST -------
*** Bug 25152 has been marked as a duplicate of this bug. ***
------- Comment #3 From 2009-05-07 03:30:22 PST -------
Assigning to Jian Li because of all the work done in blocking bugs.
------- Comment #4 From 2009-05-07 03:34:38 PST -------
Sorry for asking this question relatively late in the game, but what are the use cases for nested workers? Do they warrant increased complexity in the existing and future (e.g. Web Inspector) code at this point?

Creating workers from workers doesn't seem to be a dangerous feature, and it seems potentially useful, but it is not clear to me if it's useful enough to add yet, without feedback from web application authors who use workers.
------- Comment #5 From 2009-05-07 13:18:58 PST -------
I think they're quite useful in developing a large web application. For example, an online email application can start a worker to fetch emails and store them in the local storage on the background. This worker can start a couple nested workers such that some actions can be done in parallel, like using XHR to send emails and receive emails. With nested worker support, it will become easier to write such big applications.

If you need more information on this. Please ping me.
------- Comment #6 From 2009-06-24 14:05:18 PST -------
*** Bug 24016 has been marked as a duplicate of this bug. ***
------- Comment #7 From 2009-07-07 15:24:29 PST -------
Note: Firefox 3.5 has launched with support for this.  Over lunch today, I chatted with Maciej about this and he supported the view that we should be at feature parity to avoid developer confusion.
------- Comment #8 From 2012-05-13 05:12:21 PST -------
Does chromium have a plan to do that?
Where can find detailed information?
Thanks in advance.
------- Comment #9 From 2012-05-14 13:52:22 PST -------
I don't know about current plans but usually it was a question if there is enough real world need to justify the work... The work can be non-trivial, some part include loading refactoring (currently delegated to the parent, assuming it's a Page) and perhaps things like DevTools integration... In the past, the folks involved found more pressing needs to work on, that's it.

Theoretically, it's a nice feature and it's in the spec :-)
------- Comment #10 From 2013-01-25 17:41:04 PST -------
I am working on a library to support communication with sandboxed code that is agnostic to the specific sandboxing mechanism used. See https://github.com/tildeio/oasis.js

Support for nested contexts is important for this library (and the use-cases that are driving it).