基于.NET程序默認啟動線程數(shù)講解
問:一個.NET程序在運行時到底啟動了多少個線程?
答:至少3個。
1.啟動CLR并運行Main方法的主線程
2.調(diào)試器幫助線程
3.Finalizer線程
class Program
{
static void Main(string[] args)
{
Console.WriteLine("Main thread: {0}",
Thread.CurrentThread.ManagedThreadId);
Console.ReadKey();
}
}
通常,CLR會根據(jù)情況啟動更多的特殊線程。
•Finalizer線程:該線程負責(zé)運行GC進行垃圾對象回收。
•并發(fā)的GC線程:GC會根據(jù)情況啟動更多的線程并發(fā)進行垃圾回收。
•服務(wù)器GC線程:在服務(wù)器GC模式下,CLR可能會為多核機器的每個核創(chuàng)建GC托管堆和回收線程。
•調(diào)試器幫助線程:該線程負責(zé)為類似WinDbg等調(diào)試器提供幫助。
•AppDomain卸載線程:CLR可能會啟動一個工作線程來卸載應(yīng)用程序域。
•ThreadPool線程:ThreadPool會根據(jù)情況創(chuàng)建線程。
相關(guān)文章
.Net Core中使用Autofac替換自帶的DI容器的示例
Autofac比Core中自帶的DI功能強大的多,比如:屬性注入、基于名稱注入、子容器、自定生存期管理、遲緩初始化,本文就詳細的來介紹一下.Net Core Autofac替換DI容器,感興趣的可以了解一下2021-06-06
asp.net mvc 從數(shù)據(jù)庫中讀取圖片的實現(xiàn)代碼
今天搞了一天的MVC,在顯示圖片的時候老是出現(xiàn)問題,從網(wǎng)上搜索了好久,才找到解決方法。2010-05-05
asp.net gridview中用checkbox全選的幾種實現(xiàn)的區(qū)別
這幾天為了改變客戶端grid的全選效率問題,詳細研究了ext中g(shù)rid的全選和gridview中通過腳本實現(xiàn)的全選效率,總結(jié)一下,供大家參考,有錯誤的地方,希望大俠指正,小弟獻丑了。2009-06-06
ASP.NET檢測到不安全 Request.Form 值解決方案匯總
這篇文章主要介紹了ASP.NET檢測到不安全 Request.Form 值解決方案匯總 ,十分的全面,需要的朋友可以參考下2015-06-06

