• 企业400电话
  • 网络优化推广
  • AI电话机器人
  • 呼叫中心
  • 全 部 栏 目

    网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    基于.NET程序默认启动线程数讲解
    POST TIME:2021-10-18 02:58

    问:一个.NET程序在运行时到底启动了多少个线程?

    答:至少3个。

    1.启动CLR并运行Main方法的主线程
    2.调试器帮助线程
    3.Finalizer线程

    复制代码 代码如下:

    class Program
      {
        static void Main(string[] args)
        {
          Console.WriteLine("Main thread: {0}",
            Thread.CurrentThread.ManagedThreadId);
          Console.ReadKey();
        }
      }

    通常,CLR会根据情况启动更多的特殊线程。

    •Finalizer线程:该线程负责运行GC进行垃圾对象回收。
    •并发的GC线程:GC会根据情况启动更多的线程并发进行垃圾回收。
    •服务器GC线程:在服务器GC模式下,CLR可能会为多核机器的每个核创建GC托管堆和回收线程。
    •调试器帮助线程:该线程负责为类似WinDbg等调试器提供帮助。
    •AppDomain卸载线程:CLR可能会启动一个工作线程来卸载应用程序域。
    •ThreadPool线程:ThreadPool会根据情况创建线程。

    您可能感兴趣的文章:
    • 浅析Java中线程的创建和启动
    • 详解Java多线程编程中线程的启动、中断或终止操作
    • 详解Java编程中线程同步以及定时启动线程的方法
    • C++程序中启动线程的方法
    • Python多线程编程(二):启动线程的两种方法
    • asp.net在事件中启动线程来打开一个页面的实现方法
    • java向多线程中传递参数的三种方法详细介绍
    • java 实现线程同步的方式有哪些
    • Java多线程的用法详解
    • java启动线程的3种方式对比分析
    上一篇:Repeater绑定dictionary数据源代码及报错解决
    下一篇:关于visual studio 2012 update 2中的新功能介绍
  • 相关文章
  • 

    关于我们 | 付款方式 | 荣誉资质 | 业务提交 | 代理合作


    © 2016-2020 巨人网络通讯

    时间:9:00-21:00 (节假日不休)

    地址:江苏信息产业基地11号楼四层

    《增值电信业务经营许可证》 苏B2-20120278

    X

    截屏,微信识别二维码

    微信号:veteran88

    (点击微信号复制,添加好友)

     打开微信