我正在研究一個需要用戶輸入python代碼在我的服務器上執行的web服務(我們檢查代碼注入)。我不得不導入一個相當大的模塊,所以我想確保我沒有啓動python,並在每次運行時從頭開始導入模塊(大約需要4-6s)。用戶輸入Python腳本執行守護進程
爲此,我打算創建一個python(3.2)deamon,它將用戶輸入代碼作爲模塊導入,執行它,然後刪除/垃圾收集該模塊。我需要確保該模塊完全從RAM中消失,因爲此過程將持續到服務器重新啓動。我讀過一堆這樣的話,說這是python中很難做到的事情。
這樣做的最好方法是什麼?使用exec來定義一個帶有用戶輸入代碼的函數(用於變量範圍),然後執行該函數並以某種方式刪除該函數會更好嗎?或者有沒有更好的方法來完成我錯過的這個過程?
爲每次運行啓動一個新的python解釋器似乎是最好的解決方案:爲什麼需要這麼久?我寧願檢查它爲什麼需要這麼長時間... – gecco 2012-07-23 11:38:13
我們正在加載聖人,其中有一個巨大的附加庫需要提供給用戶。 – 2012-07-23 12:55:51