• This repository has been archived on 25/Jun/2018
  • Stars
    star
    243
  • Rank 166,489 (Top 4 %)
  • Language
    Rust
  • License
    Other
  • Created over 7 years ago
  • Updated over 6 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Asyncio event loop written in Rust language

Asyncio event loop based on tokio-rs (WIP) Build Status Join the dev chat at https://gitter.im/PyO3/Lobby

async-tokio is a drop-in replacement of the built-in asyncio event loop. async-tokio is implemented in rust and uses tokio-rs under the hood and PyO3 python binding.

Using tokio loop

You can create an instance of the loop manually, using:

import tokio

policy = tokio.EventLoopPolicy()
asyncio.set_event_loop_policy(policy)

Development of tokio loop

To build tokio loop, you'll need rust nightly and Python 3.6. The best way is to create a virtual env, so that you'll have python commands pointing to the correct tools.

  1. git clone [email protected]:PyO3/tokio.git
  2. cd tokio
  3. make build
  4. make test

Status

At the moment async-tokio works on unix like systems only. Supported api:

  • time api (call_at, call_later)
  • sockets api (sock_xxx methods)
  • tcp (client/server)
  • unix domain socket
  • dns
  • pipes
  • subprocess
  • signals
  • executors

UDP support is missing.

License

async-tokio is offered under the Apache 2.0 licenses.