Skip to content

Make task executor configurable #25

Description

@bltavares

Currently, this libraries since #21 has been using async-std to spawn new tasks.

We could instead offer the task executor to be configurable using cargo feature selectors. There is the https://github.com/bastion-rs/agnostik crate to help with this.

This would let the code to be also used on Tokio or Bastions codebases (preferring using async-std or smol by default, given that we still make use of async-std::RwLock on other stuff.

I have no idea what a proactive IO framework is as well - but it would be worth checking if it make sense to use (https://github.com/vertexclique/nuclei)

Given that colmeia-hyperswarm-mdns crate is using my own custon multicast-socket crate, it would not benefit from async-std's epoll io or bastion-rs/nuclei. The replicator crate would be the next one that need to find a good io replicator.

TODO on a livestream:

  • Include bastions-rs/agnostik crate on every crate that spawns tasks
  • Add feature selector to select which crate to use

Investigation:

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions