Skip to content
This repository was archived by the owner on Jun 25, 2018. It is now read-only.
/ tokio Public archive

Asyncio event loop written in Rust language

License

Notifications You must be signed in to change notification settings

PyO3/tokio

Folders and files

NameName
Last commit message
Last commit date

Latest commit

author
Martin Larralde
May 11, 2018
6396115 · May 11, 2018
Apr 16, 2017
Jul 19, 2017
May 11, 2018
Nov 27, 2017
Dec 5, 2017
May 10, 2017
Jul 24, 2017
Jul 24, 2017
May 11, 2018
May 11, 2018
May 13, 2017
Jul 24, 2017
Jul 23, 2017
May 11, 2018
Feb 15, 2018
Jul 24, 2017

Repository files navigation

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.