toasyncio
Write on tornado with asyncio easy.
About
Transparent convert any asyncio futures and inline yield methods to tornado futures.
Examples
Using
import tornado.gen
import asyncio
from tornado.ioloop import IOLoop
from toasyncio.gen import coroutine
@coroutine
def test():
print('Tornado future')
yield tornago.gen.sleep(1)
print('Asyncio future')
yield from asyncio.sleep(1, loop=IOLoop.current().asyncio_loop)
print('Done')
IOLoop.current().run_sync(test)
Testing
import asyncio
from tornado.gen import sleep
from toasyncio.testing import gen_test, AsyncTestCase
class TestBasic(AsyncTestCase):
@gen_test
def test_all_together(self):
step = 0.1
count = 10
t0 = self.io_loop.time()
for i in range(count):
yield sleep(step / 2)
yield from asyncio.sleep(step / 2, loop=self.aio_loop)
self.assertTrue((t0 + (count * step)) <= self.io_loop.time())
Metadata
Release files for toasyncio 0.5.3
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| toasyncio-0.5.3.tar.gz | 3.0 kB | Details |
Release files / toasyncio-0.5.3.tar.gz
| Download URL | toasyncio-0.5.3.tar.gz |
|---|---|
| Size | 3.0 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
cd45af0ed606eba0152a06d931b90a2ffb1be44663cb36d3f0d0fb4ab3906287
|
|
BLAKE2b-256 checksum How to use checksums |
88948f94b2e5b14230f0618c77f57d77f6e83ba6982ade9692ff72a2ae09dfe3
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |