JavaScript/HandlingThreads
Jump to navigation
Jump to search
In Firefox 4, JS extensions using nsIThread.dispatch won't work the same way they have in the past. The purpose of this page is to document the design choices we have, so we can get to a decision, late though it may be.
Here are the choices we have. We can pick more than one.
MT Proxies
Description
Advantages
Disadvantages
ChromeWorkers w/ usable Constructor
Description
Advantages
Disadvantages
Nothing
Description
Advantages
Disadvantages
Environment cloning
Description
Advantages
Disadvantages
Structured cloning with WrappedNative sharing
Description
In addition to chrome workers with a working constructor, we could add support for structured cloning of wrapped natives.
Advantages
This would allow a programming style that is more similar to what worked before with Thread.dispatch. Thread-safe C++ objects could be sent across to a different thread using postMessage and then operated on there.
Disadvantages
Implementation cost.