19 September 2017
Hi there, Tokio community!
Carl, Alex, and myself have been hard at work developing ways to simplify, streamline, and focus the Tokio project. As part of this effort, we have written the first-ever Tokio RFC!
Here’s a quick run-down of what’s being proposed.
Add a global event loop in
tokio-core that is managed automatically by
default. This change eliminates the need for setting up and managing your own
event loop in the vast majority of cases.
Remote. Thus, even working with custom event loops becomes simpler.
Decouple all task execution functionality from Tokio, instead providing it through a standard futures component. As with event loops, provide a default global thread pool that suffices for the majority of use-cases, removing the need for any manual setup.
Sendfutures), provide more fool-proof APIs that help avoid lost wakeups.
Provide the above changes in a new
tokio crate, which is a slimmed down
version of today’s
tokio-core, and may eventually re-export the contents
tokio-core crate is deprecated, but will remain available
for backward compatibility. In the long run, most users should only need to
tokio to use the Tokio stack.
Focus documentation primarily on
tokio, rather than on
tokio-proto. Provide a much more extensive set of cookbook-style examples
and general guidelines, as well as a more in-depth guide to working with
Once we’ve reached consensus on the RFC, we plan to form an impl period working group, focused primarily on docs and examples. And from there, we will be working with the Hyper team to figure out the next chapter of that story. Stay tuned!