我有一個進程A啓動一個進程B.進程B更改進程A的某些文件,所以我需要在進程B中延遲讓進程A關閉自己。延遲進程開始,直到父進程關閉
目前我已經建立了兩個解決方案。
解決方案1:引用link「我能想到的唯一方法就是編寫第二個等待30秒並加載所需程序的程序,調用該程序並關閉第一個程序,第二個等待30秒然後加載你想要的那個在第一位。「
這項工作,但第三個程序是有點窮窮盡的優雅,如果你知道我的意思。解決方案2:簡單的,在邏輯啓動前(我控制進程A和B),只需在進程B中放置一個Thread.Sleep即可。這個工作也是,並沒有壞主意......
我問,因爲我正在尋找一種方法來將processA上的參數傳遞給processB.start,因此它可以提供更乾淨/優雅的解決方案。
你到目前爲止嘗試過什麼?你可以分享你的代碼,瞭解你如何開始你的流程? Will ['Process.WaitForExit()'](https://msdn.microsoft.com/en-us/library/fb4aw7b8(v = vs.110).aspx)是否有效?顧名思義,它啓動一個進程,然後保存所有執行,直到該進程完成,然後恢復。 – sab669
這不適用於我,我需要的過程A過程之前關閉B星運行,Process.WaitforExit()是相反的。我再說一遍,進程B將嘗試更改進程A的文件,如果進程A正在運行,進程B將無法執行更改。 – Aferrercrafter
將進程A的PID傳遞給進程B,從B打開進程然後執行WaitForExit(),然後執行文件修改 – Gusman