透明地将任何asyncio futures和内联yield方法转换为tornado futures。
项目描述
toasyncio
使用asyncio在tornado上轻松编写。
关于
透明地将任何asyncio futures和内联yield方法转换为tornado futures。
示例
使用
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)
测试
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())
项目详情
关闭
toasyncio-0.5.3.tar.gz的散列
算法 | 散列摘要 | |
---|---|---|
SHA256 | cd45af0ed606eba0152a06d931b90a2ffb1be44663cb36d3f0d0fb4ab3906287 |
|
MD5 | 7aee7838080edfcdede52bb684a64119 |
|
BLAKE2b-256 | 88948f94b2e5b14230f0618c77f57d77f6e83ba6982ade9692ff72a2ae09dfe3 |