-
Notifications
You must be signed in to change notification settings - Fork 12.9k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Move futures out of core #2491
Comments
What's the plan for using futures with arcs? I'm not sure I see how arcs help futures. |
The problem with current futures is that they are not sendable, so can't be composed in useful, parallel ways. I'm thinking arcs can fix that, though I haven't thought too much about it. |
This sounds tricky, since the future object must be mutable. Since futures run in another task, we could just have get create a port, send a message to the task to send the value back on that port, and continue. We might also tie it to a resource that does ref counting so the task is sure to live long enough. This means get is expensive (it has to create a port), but the future could be send. |
I was just reading over this again, and I suspect that futures are now sendable, since they use pipes and pipe endpoints are sendable. |
Awesome! That makes them much more useful. |
Futures now are in std, so we can close this task according to the title. However, the body also mentions changing futures to use ARCs, which it doesn't use at the moment. Do we still want to make that change, or are using pipes sufficient? |
No, I think this is done. |
fix vscode configuration Also now that we install rustfmt into the toolchain by default, we no longer need to adjust that command.
Allow users to skip integration tests by selecting binaries or lib targets.
This is a continuation from rust-lang#2491. For completeness, I'm adding --bin option. I've also added a test for these options. Finally, I moved cargo specific arguments to its own module.
futures are not a core type and are only used by the task module. Futures are going to be redesigned to use arcs.
The text was updated successfully, but these errors were encountered: