DataReceived事件是在異步讀取標準輸出流或標準錯誤流時觸發的事件,參數為對象sender和EventArgs e。
在處理DataReceived事件時,通常會使用StreamReader類來讀取流中的數據,例如:
private void process_OutputDataReceived(object sender, DataReceivedEventArgs e)
{
if (e.Data != null)
{
Console.WriteLine("Output from process: {0}", e.Data);
}
}
在上面的示例中,通過判斷DataReceivedEventArgs的Data屬性是否為null來判斷是否有可用的數據。如果有數據可用,就可以通過e.Data屬性來訪問流中的數據。
需要注意的是,DataReceived事件在一個新的線程中觸發,因此在處理事件時需要考慮線程安全性。