2016-09-06 38 views
1

我想了解的Python探查器的输出,同时运行的Python ASYNCIO基础的计划:理解的Python ASYNCIO探查输出

Python3 asyncio profiler output

我可以看到我的计划是花费〜时间67%的努力获得线程锁定。

  1. 这在asyncio程序中是否正常?我的应用程序是单线程的,我不会将任何工作推迟到工作线程并最低限度地记录到控制台。

  2. 我的应用程序在选择呼叫中花费了21%。这大致意味着20%的运行时间是否闲置(等待事件或回调发生)?

回答

1

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

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