我有一個小型的HTTP服務器腳本,我寫了使用eventmachine需要調用外部腳本/命令,並通過反引號(``
)。當提供不運行反撥代碼的請求時,一切都很好,但是,只要我的EM代碼執行任何反向外部腳本,它就會停止服務請求並一般停止執行。eventmachine和外部腳本通過反引號
我注意到eventmachine似乎對子進程和/或線程很敏感,並且似乎有用於此目的的popen
方法,但EM的源警告說此方法在Windows下不起作用。運行這個腳本的許多機器都運行Windows,所以我不能使用popen
。
我在這裏運氣不好嗎?有沒有一種安全的方式來從Windows下的eventmachine腳本運行外部命令?有什麼辦法可以觸發一些命令在外部運行而不阻塞EM的執行?
編輯:,這似乎是搞砸了EM最多的是我在Windows start
命令的用法,如罪魁禍首:start java myclass
。我使用的是開始的原因是因爲我想這些外部腳本開始運行,並保持運行EM請求送達