同步块代码的简单异步包装器
asyncwrap的Python项目详细描述
#asyncwrap
asyncwrap帮助将同步调用包装成异步调用,它基于异步和线程模块。
asyncwrap提供了简单的包装器,如果在正确的地方使用,可以使
代码并发运行并更快。有关更多信息,请查看示例
目录。
asyncwrap与库/框架无关,可与任何python一起使用>;=3.5
代码。
>所有你需要的东西都可以通过导入一个名为async的类找到:从asyncwrap导入async
```
>
>
#示例
``python
import time
import random
import asyncio
import tempfile
import functools
b'hello world')
等待异步睡眠(random.random())
等待异步调用(f.seek,0)
等待异步睡眠(random.random())
数据=等待异步调用(f.read)
打印(do_async_with,data)
):
等待异步睡眠(random.random())
print('do-u async-u for',i)
>异步def-do-u异步调用(loop,f,t,t):
r=awat async.call(f,t)
>print('do-u async-async-调用,f,t,r)
>returnr
async def-do-u异步执行器调用(loop,f,t,t):
r=r=br/>
等待Async.ExecutorCall(f,t)
print('do_async_executor_call',f,t,r)
return r
async def do_async_thread_call(loop,f,t):
r=await async.threadcall(f,t)
print('do_async_thread_call',f,t,
>return r
def blocking_sleep(t):
time.sleep(t)
>如果\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\与(循环)异步,
异步。确保未来(使用(循环)异步,
异步。确保未来(
执行异步调用(循环,阻塞睡眠,random.random()*5)),
阻塞睡眠,5),
阻塞睡眠(3)),
asyncio.sure_future(
do_async_thread_call(loop,阻塞睡眠(2)),
]
loop.run_until_complete(asyncio.wait(tasks))
loop.close()
```
asyncwrap帮助将同步调用包装成异步调用,它基于异步和线程模块。
asyncwrap提供了简单的包装器,如果在正确的地方使用,可以使
代码并发运行并更快。有关更多信息,请查看示例
目录。
asyncwrap与库/框架无关,可与任何python一起使用>;=3.5
代码。
>所有你需要的东西都可以通过导入一个名为async的类找到:从asyncwrap导入async
```
>
>
#示例
``python
import time
import random
import asyncio
import tempfile
import functools
b'hello world')
等待异步睡眠(random.random())
等待异步调用(f.seek,0)
等待异步睡眠(random.random())
数据=等待异步调用(f.read)
打印(do_async_with,data)
):
等待异步睡眠(random.random())
print('do-u async-u for',i)
>异步def-do-u异步调用(loop,f,t,t):
r=awat async.call(f,t)
>print('do-u async-async-调用,f,t,r)
>returnr
async def-do-u异步执行器调用(loop,f,t,t):
r=r=br/>
等待Async.ExecutorCall(f,t)
print('do_async_executor_call',f,t,r)
return r
async def do_async_thread_call(loop,f,t):
r=await async.threadcall(f,t)
print('do_async_thread_call',f,t,
>return r
def blocking_sleep(t):
time.sleep(t)
>如果\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\与(循环)异步,
异步。确保未来(使用(循环)异步,
异步。确保未来(
执行异步调用(循环,阻塞睡眠,random.random()*5)),
阻塞睡眠,5),
阻塞睡眠(3)),
asyncio.sure_future(
do_async_thread_call(loop,阻塞睡眠(2)),
]
loop.run_until_complete(asyncio.wait(tasks))
loop.close()
```