我一直有使用Python的setuptools的一個奇怪的150ms的啓動點球,我已經構建了最小的測試案例和問題仍然存在有150ms的啓動處罰:對於這個最小奇怪〜使用python setuptools的
我的項目佈局案例:
- setup.py
- setuptest
- - __init__.py
- - __main__.py
的setup.py文件包含:
from setuptools import setup
setup(
name = 'setuptest',
version = '0.1',
packages = ['setuptest'],
entry_points = {
'console_scripts' : ['setuptest = setuptest.__main__:main']
} ,
)
的__main__.py文件包含簡單:
#!/usr/bin/env python2
def main():
print "hai"
if __name__ == '__main__':
main()
這樣做的項目根目錄中:
—— — time python2 setuptest
hai
real 0m0.021s
user 0m0.017s
sys 0m0.004s
給了我21 ms總執行腳本,但是,運行sudo python2 setup.py install
和做後:
—— — time setuptest
hai
real 0m0.158s
user 0m0.144s
sys 0m0.012s
—— —
給我158ms。這個+ 150s的啓動延遲時間是一致的,發生在整個板上時,我使用setuptools但沒有發生與我通過軟件包管理器安裝的東西或手動安裝其他人的項目,這讓我覺得我明顯在做一些事情錯。
當您將'setup.py'內的'setup'調用包裝到'if __name__'中時,時間會發生變化嗎? –
@SergeiLebedev,不,這似乎沒有改變任何東西,仍然約160-170毫秒爲一個簡單的hello世界計劃。 – Zorf
對不起,我誤解了你的問題,雖然它是'setup.py'有延遲問題。 –