基於other questions,我使用的System.Diagnostics.Process
到Start
和Kill
的方法:的處理被拒絕死
this.childProcess.Kill();
this.childProcess.WaitForExit();
this.childProcess.Close();
我將承擔與Kill
命令的異步特性即WaitForExit
交易,然而該過程問題(perl.exe)拒絕死亡。相反,它會持續一段時間。
這段「時間段」正在引起競爭狀態。無論如何,我可以確保這個過程實際上死亡?
這是一個XY問題。 Y是「爲什麼我不能殺死這個過程」。 X是「我爲什麼編寫代碼來首先殺死進程」。我不得不推薦追求X. – 2010-09-20 23:31:33
@Hans我想知道爲什麼一個流程不會死亡是分析我的項目中的數據流的一個有用的步驟。我可以重寫我的項目的大部分內容,假定只有在重新引入相同問題時才能殺死進程。 – tzenes 2010-09-20 23:35:15
嗯,我試過了。祝你好運。 – 2010-09-20 23:47:35