首页 文章

了解Python asyncio profiler输出

提问于
浏览
1

我正在尝试在运行基于Python asyncio的程序时理解Python分析器的输出:

Python3 asyncio profiler output

我可以看到我的程序花了大约67%的时间来尝试获取线程锁 .

  • 在asyncio程序中这是正常的吗?我的应用程序是单线程的,我不会将任何工作推迟到工作线程并且最小化日志记录到控制台 .

  • 我的应用在精选电话中花费约21% . 这大致意味着20%的运行时空闲(等待事件或回调发生)吗?

1 回答

  • 1

    看起来您正在使用从所有线程收集数据的调试器 . 等待条件变量获取意味着在线程池中为新任务等待空闲 .

    select 中花费的时间意味着再次空闲等待,但在这种情况下,它正在等待网络活动 .

相关问题