對於使用 new Task創建的任務,需要手動調用start方法任務才會開始運行;但是使用async/await異步里的任務不需要手動啟動運行
實例
static void Main(string[] args) { Task<string> task = new Task<string>(() => TaskMethod("task1")); task.Start(); Task<string> asyncTask = AsyncTask("asyncTask"); //asyncTask.Start(); // 報錯 不能對約定樣式的任務調用 Start Console.ReadLine(); } public async static Task<string> AsyncTask(string taskName) { return await Task.Run(()=> TaskMethod(taskName)) ; } public static string TaskMethod(string taskName) { Console.WriteLine(string.Format("task {0} run", taskName)); return taskName; }
運行結果: