當前位置: 首頁>>代碼示例>>C#>>正文


C# Task.RunSynchronously方法代碼示例

本文整理匯總了C#中System.Threading.Tasks.Task.RunSynchronously方法的典型用法代碼示例。如果您正苦於以下問題:C# Task.RunSynchronously方法的具體用法?C# Task.RunSynchronously怎麽用?C# Task.RunSynchronously使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在System.Threading.Tasks.Task的用法示例。


在下文中一共展示了Task.RunSynchronously方法的1個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的C#代碼示例。

示例1: Main

//引入命名空間
using System;
using System.Threading;
using System.Threading.Tasks;

public class Example
{
   public static void Main()
   {
      Console.WriteLine("Application executing on thread {0}",
                        Thread.CurrentThread.ManagedThreadId);
      var asyncTask = Task.Run( () => {  Console.WriteLine("Task {0} (asyncTask) executing on Thread {1}",
                                                           Task.CurrentId,
                                                           Thread.CurrentThread.ManagedThreadId);
                                         long sum = 0;
                                         for (int ctr = 1; ctr <= 1000000; ctr++ )
                                            sum += ctr;
                                         return sum;
                                      });
      var syncTask = new Task<long>( () =>  { Console.WriteLine("Task {0} (syncTask) executing on Thread {1}",
                                                                 Task.CurrentId,
                                                                 Thread.CurrentThread.ManagedThreadId);
                                              long sum = 0;
                                              for (int ctr = 1; ctr <= 1000000; ctr++ )
                                                 sum += ctr;
                                              return sum;
                                            });
      syncTask.RunSynchronously();
      Console.WriteLine();
      Console.WriteLine("Task {0} returned {1:N0}", syncTask.Id, syncTask.Result);
      Console.WriteLine("Task {0} returned {1:N0}", asyncTask.Id, asyncTask.Result);
   }
}
開發者ID:.NET開發者,項目名稱:System.Threading.Tasks,代碼行數:33,代碼來源:Task.RunSynchronously

輸出:

Application executing on thread 1
Task 1 (syncTask) executing on Thread 1
Task 2 (asyncTask) executing on Thread 3
1 status: RanToCompletion
2 status: RanToCompletion

Task 2 returned 500,000,500,000
Task 1 returned 500,000,500,000


注:本文中的System.Threading.Tasks.Task.RunSynchronously方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。