.NET非同步程式設計:Task.Run()與Task.Factory.StartNew()的比較
在.NET非同步程式設計中,經常需要建立和啟動新的任務。為此,.NET框架提供了兩種常用的方法:Task.Run()
和Task.Factory.StartNew()
。雖然兩者都實現了相同的基本目標,但它們的功能和用例有所不同。
Task.Factory.StartNew()
Task.Factory.StartNew()
功能更全面,提供了多種選項來自訂新任務的行為。它接受的一些關鍵參數包括:
這種靈活性可讓您根據特定需求調整任務,例如建立長時間運行的任務或在特定執行緒上執行任務。
Task.Run()
Task.Run()
是在.NET 4.5中引入的Task.Factory.StartNew()
的簡化版本。它為新任務提供了預設配置,使用以下設定:
當您不需要任何特殊自定義,只需使用預設設定快速啟動新任務時,Task.Run()
是一個方便的選擇。
何時使用Task.Run()與Task.Factory.StartNew()
一般來說,當您需要自訂新任務的行為時,請使用Task.Factory.StartNew()
。這包括以下場景:
當您不需要任何自訂,只需使用預設設定建立新任務時,請使用Task.Run()
。 Task.Run()
是一個快捷方式,簡化了任務的創建,無需額外的配置。
以上是Task.Run() 與 Task.Factory.StartNew():什麼時候該使用哪一個?的詳細內容。更多資訊請關注PHP中文網其他相關文章!