'select.poll'...}的{method‘poll’在cprofile輸出中意味著什么?

我有一個flask應用程序,我正在嘗試評測(我是新手)。當我運行它時,我得到了這樣的結果:

3327 function calls (3247 primitive calls) in 7.350 seconds

   Ordered by: cumulative time

   ncalls  tottime  percall  cumtime  percall filename:lineno(function)
      7/1    0.000    0.000    7.350    7.350 {built-in method builtins.exec}
        1    0.000    0.000    7.350    7.350 <string>:1(<module>)
        1    0.000    0.000    7.350    7.350 vo_app_v2.py:1094(run_app)
        1    0.000    0.000    7.350    7.350 app.py:1064(run)
        1    0.000    0.000    7.349    7.349 serving.py:936(run_simple)
        1    0.000    0.000    7.348    7.348 serving.py:739(serve_forever)
        1    0.000    0.000    7.348    7.348 socketserver.py:215(serve_forever)
       15    0.000    0.000    7.347    0.490 selectors.py:403(select)
       15    7.347    0.490    7.347    0.490 {method 'poll' of 'select.poll' objects}

最后一行是什么意思?我如何追蹤代碼中的行?

? 最佳回答:

poll()是一個更新的系統調用,它取代了一個名為select()的舊接口(甚至更新的Linux-specific版本稱為{%12})。這個系列中的所有接口都是關于I/O的——允許單個thread有效地等待多個文件描述符,直到其中一個文件描述符準備好讀取或寫入,然后當其中一個FD準備好對其進行工作時被喚醒。

因此,這與您的一行代碼無關;這是一行Python standard-library代碼。具體來說,它在等待I/O——無論是磁盤還是網絡都不清楚,但基本上,它要么等待數據進入,要么等待網絡連接(或磁盤)停止忙碌,以便發送(或寫入)數據;特別是在一個上下文中,單個thread可能被調用來處理與多個文件或網絡連接中的任何一個相關的事件。

一般來說,這不是代碼慢的地方,而是代碼在等待其他東西的地方。

主站蜘蛛池模板: 日韩精品无码免费一区二区三区| 日韩在线视频一区| 国偷自产av一区二区三区| 免费萌白酱国产一区二区| 精品午夜福利无人区乱码一区| 无码日韩精品一区二区三区免费 | 无码人妻一区二区三区免费视频 | 91在线精品亚洲一区二区| 亚洲AV日韩AV天堂一区二区三区| 国产一区二区三区免费| 国产免费一区二区三区不卡| 亚洲色婷婷一区二区三区| 亚洲乱色熟女一区二区三区丝袜| 国产一区二区视频在线观看| 伦理一区二区三区| 午夜福利一区二区三区在线观看| 香蕉久久av一区二区三区| 精品人无码一区二区三区| 亚洲熟妇无码一区二区三区导航| 国产福利无码一区在线| 国产伦精品一区二区三区免费下载 | 日韩一区精品视频一区二区| 国产精品一级香蕉一区| 无码视频免费一区二三区| 日本一区二区三区中文字幕| AV天堂午夜精品一区| 国产精品区一区二区三在线播放| 免费播放一区二区三区| 精品久久久中文字幕一区| 天堂不卡一区二区视频在线观看| 久久久久国产一区二区| 日本一区精品久久久久影院| 国模私拍福利一区二区| 国产成人一区二区动漫精品| 久久精品人妻一区二区三区 | 国产成人久久一区二区三区| 久久精品一区二区影院| 91一区二区视频| 制服美女视频一区| 亚洲熟女少妇一区二区| 亚洲av永久无码一区二区三区|