我想要一個腳本啓動並與長時間運行的進程進行交互。該進程在腳本執行第一次時啓動,之後腳本可以重複執行,但會檢測到進程已經在運行。腳本應該能夠與流程交互。我希望這可以在Unix和Windows上工作。檢測並與長時間運行的進程交互
我不確定我是如何做到這一點的。具體如何檢測流程是否已在運行並打開管道?我應該使用套接字(例如,在已知端口上註冊服務器進程,然後檢查它是否響應),還是應該使用「命名管道」?或者有更簡單的方法嗎?
我想要一個腳本啓動並與長時間運行的進程進行交互。該進程在腳本執行第一次時啓動,之後腳本可以重複執行,但會檢測到進程已經在運行。腳本應該能夠與流程交互。我希望這可以在Unix和Windows上工作。檢測並與長時間運行的進程交互
我不確定我是如何做到這一點的。具體如何檢測流程是否已在運行並打開管道?我應該使用套接字(例如,在已知端口上註冊服務器進程,然後檢查它是否響應),還是應該使用「命名管道」?或者有更簡單的方法嗎?
套接字是更容易讓Windows和其他操作系統之間移植,所以這就是我會推薦它命名管道(這就是爲什麼如IDLE使用套接字而不是命名管道 - 後者上需要依賴於平臺的代碼Windows,例如通過[[或第三方win32all
或cython
& c]],而套接字正常工作)。
那麼這裏是一個想法...