我一直在尋找這個答案,但找不到一個簡單的例子來幫助我理解。我正在用c#編寫win表單應用程序,它包裝了一些用於視頻編碼的命令行工具。我有一個方法叫做encodefiles我想在一個線程中運行這個方法,這樣UI仍然可以運行。一旦線程完成,我希望它調用另一個方法,所以我知道它已完成。然後我可以編碼下一個文件或完成。全部取決於是否還有其他文件需要編碼。如何在線程中運行方法並在線程退出時調用方法
當我只使用一個命令行工具時,我正在得到我想要的操作,因爲我正在使用可以附加完成的事件的過程對象。我想同一個線程,但不知道如何。
總之我希望能夠做一個線程,而不是一個過程
Process myProcess = Process.Start(commandLineExe, commandlineSwitches);
myprocess.EnableRaisingEvents = true;
myprocess.Exited += new EventHandler(myprocess_exited);
希望是有道理以下
正在使用C#.NET 3.5和Visual Studio 2010
您在Process.Start中運行的應用程序是什麼?我的意思是commandLineExe是另一個C#控制檯應用程序? – 2010-11-02 09:10:17
流程代碼僅僅是一個例子,用於演示他想通過一個線程實現什麼。像'thread.Exited + = OnExit' – jgauffin 2010-11-02 09:17:23