seo优化:

  • 如何在 python 的 asyncio 里面执行同步函数并且不阻塞事件循环
  • 如何在 python 的 fastapi 里面执行同步函数并且不阻塞事件循环

关于第一个问题,看下面的代码:

import asyncio
import concurrent.futures

# 阻塞的同步函数
def blocking_sync_function():
    # 模拟一个阻塞的操作,比如 I/O 或者长时间计算
    import time
    time.sleep(3)
    return "Done"

async def run_blocking_function():
    loop = asyncio.get_event_loop()
    result = await loop.run_in_executor(None, blocking_sync_function)
    print(result)

asyncio.run(run_blocking_function())

关于第二个问题,参考:peewee 会阻塞 fastapi 的 异步协程吗


universe_king
3.4k 声望680 粉丝