2016-09-06 36 views
1

我想了解的Python探查器的輸出,同時運行的Python ASYNCIO基礎的計劃:理解的Python ASYNCIO探查輸出

Python3 asyncio profiler output

我可以看到我的計劃是花費〜時間67%的努力獲得線程鎖定。

  1. 這在asyncio程序中是否正常?我的應用程序是單線程的,我不會將任何工作推遲到工作線程並最低限度地記錄到控制檯。

  2. 我的應用程序在選擇呼叫中花費了21%。這大致意味着20%的運行時間是否閒置(等待事件或回調發生)?

回答

1

看起來您正在使用調試器來收集所有線程的數據。 等待條件變量獲取意味着在線程池中空閒等待新任務。

花在select上的時間意味着再次空閒等待,但在這種情況下,它正在等待網絡活動。