2008-09-24 76 views
1

幾乎每個Python Web框架都有一個運行wsgi應用程序的簡單服務器,並且每當源發生更改時都會自動重新導入導入的模塊。我知道我可以看看代碼,看看它是如何完成的,但這可能需要一些時間,我只是出於好奇而問。有沒有人有任何想法如何實施?檢查所有導入的Python模塊中的代碼更改

回答

2

作爲一個reloader機制(werkzeug中的一個)的作者,我可以告訴你它不起作用。如果監視器線程發現一個模塊在文件系統上發生了變化,那麼所有重新加載器都會分叉一次並重新啓動子進程。

內聯reload() ing不起作用,因爲對重新加載的模塊的引用沒有更新。

1

reload()不起作用。 「重新加載」通常通過分叉來實現。

實現「真正的」重載()是非常困難的,甚至是最嚴重的嘗試,twisted.python.rebuild是不完美的。