[英]In .NET 4, does BeginInvoke and Task use the same threadpool?
.NET 4引入了由Task Parallel庫訪問的全新線程池設計。 但是,如果我有使用Delegate.BeginInvoke的舊代碼,那些新線程池會執行嗎? 或舊的線程池仍然在運行時的某個地方?
它們都使用相同的ThreadPool。 ThreadPool.QueueUserWorkItem
也可以。
但是,與Task.Factory.StartNew相比, Delegate.BeginInvoke
有額外的開銷,並且沒有利用ThreadPool中的許多功能,例如工作竊取或新的調試功能。 我建議重構這個以在時間允許的情況下使用新的Task功能。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.