Skip to content

Re-enable the client's custom executor support #1854

@seanmonstar

Description

@seanmonstar

As part of the std::future update, the client's custom executor code is unimplemented!. We should get it working again.

Some notes:

  • The Executor trait now requires &mut self, so the previous Arc<dyn Executor> won't work. Most executors already have synchronized queuing internally, so it'd be a shame to use a mutex here.
  • It'd be even better to make the executor a generic, so that we could remove the bounds requiring the Connector and Body types to be thread-safe. This would need a bit of work, converting most of the Clients internal futures to not use combinators, but to be nameable types. Then, we could have some E: ClientExec trait similar to the server side.

Metadata

Metadata

Assignees

No one assigned

    Labels

    A-clientArea: client.E-mediumEffort: medium. Some knowledge of how hyper internal works would be useful.

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions