【C#】Task的4種啟動方式
當前位置:點晴教程→知識管理交流
→『 技術文檔交流 』
摘要在C#中,根據應用程序的類型和需求,可以選擇不同的方式來啟動任務(Task)。這些啟動方式主要通過 Task的啟動方式一共有4種。
正文調用Start方法 首先創建一個 private void btnRun_Click(object sender, EventArgs e) { var t = new Task(() => { this.BeginInvoke(() => { txtStatus.AppendText("Task RUN...\r\n"); }); Task.Delay(1000); }); t.Start(); Task.WaitAll(t);//等待所有任務結束,這是在UI是會卡住,需要把上面的Invoke改成BeginInvoke txtStatus.AppendText("RUN FINISH\r\n"); } 靜態方法Run
private void btnRun_Click(object sender, EventArgs e) { Task.Run(() => { this.Invoke(new Action(() => { this.txtStatus.AppendText("FINISH"); })); }); } TaskFactory工廠
private void btnRun_Click(object sender, EventArgs e) { TaskFactory factory = new TaskFactory(); factory.StartNew(() => { this.Invoke(new Action(() => { txtStatus.AppendText("FINISH1\r\n"); })); Task.Delay(5000); }); } RunSynchronously同步啟動 private void btnRun_Click(object sender, EventArgs e) { var t = new Task(() => { this.txtStatus.AppendText("FINISH"); }); t.RunSynchronously();//同步方法 } 使用 |
關鍵字查詢
相關文章
正在查詢... |