我目前正在開發一個連接到服務器的python中的簡單應用程序。目前,它是單線程的(因爲目前不需要多線程)。正在運行的進程的Python REPL
但是,我想 - 爲了調試,維護等,也可以通過stdin有一個REPL。
如果可能,我該如何去做?我需要記住任何事情嗎?我需要爲它製作一個單獨的線程嗎?
我目前正在開發一個連接到服務器的python中的簡單應用程序。目前,它是單線程的(因爲目前不需要多線程)。正在運行的進程的Python REPL
但是,我想 - 爲了調試,維護等,也可以通過stdin有一個REPL。
如果可能,我該如何去做?我需要記住任何事情嗎?我需要爲它製作一個單獨的線程嗎?
也許this問題可以幫助。您可以修改它以創建自定義的REPL。
您可能需要進行非阻塞或使用線程。
我個人將Twisted用於併發性,它還提供了易於集成的REPL協議。
還有rfoo。自述:
RCONSOLE - 包含rfoo包是 自動完成,可以用來檢查和修改 運行腳本的名稱空間中的遠程控制檯的Python。
要激活腳本做:
from rfoo.utils import rconsole
rconsole.spawn_server()
要從shell附加做到:
$ rconsole
安全注意:
的RCONSOLE聽衆開始spawn_server()將接受任何本地 連接,因此可能不安全以用於共享主機 或類似環境!
+1:twisted還提供了人孔 - 一種服務,您可以SSH連接到您的應用程序,並在運行時獲得REPL與其交互! – nosklo 2009-06-04 11:16:39