我正在執行一個使用C#win應用程序在命令提示符下調用BCP的線程。 如果線程執行完成,即BCP輸出完成,我想要執行一些操作。 BCP out在本地機器上運行。 我應該如何檢查線程執行是否完成? 我的代碼看起來像如何檢查線程執行是否完成
using(this.proc = new Process())
{
var procStartInfo =
new ProcessStartInfo(cmdFileName)
{
UseShellExecute = false,
RedirectStandardOutput = true,
RedirectStandardError = true,
WindowStyle = ProcessWindowStyle.Hidden,
CreateNoWindow = true
};
this.proc.StartInfo = procStartInfo;
if(this.proc.Start())
{
var thread1 = new Thread(this.GetError) { IsBackground = true };
var thread2 = new Thread(this.GetOutput) { IsBackground = true };
thread1.Start();
thread2.Start();
// check if thread execution is completed then do some logic
}
}
你想等待線程或進程? –
過程。當BCp out完成時,只有我必須走向下一步。但是爲了支持我已經實現了2個線程的流程。 – vaibhav