Ryan Dahl has posted the roadmap for version 0.8 of Node.js. The following sections describe the highlights.
Node will allow users to spawn "child processes" that actually run in a thread. We have to get rid of all the global variables in node. Compiled extensions need know which isolate they're targeting, and we need to decide if we want to load the extension multiple times or just once. Also, some changes to libuv are necessary, since we will have to completely clean up a loop. Finally we'll have to deal with debugging a multi-threaded node process.How does this relate to Web Workers? Quoting Paddy Byers:
Domains provide a lightweight isolation mechanism for all i/o related to a particular network connection (e.g. an incoming http request). If an unhandled error is encountered, all i/o local to that particular domain is canceled and all handles are cleaned up. […]
We need to define an easy and suggested way of building extensions, which should be similar across all supported platforms.Quoting the Node.js documentation on addons:
Addons are dynamically linked shared objects. They can provide glue to C and C++ libraries.