• 企业400电话
  • 微网小程序
  • AI电话机器人
  • 电商代运营
  • 全 部 栏 目

    企业400电话 网络优化推广 AI电话机器人 呼叫中心 网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    基于.NET程序默认启动线程数讲解

    问:一个.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 巨人网络通讯 版权所有

    《增值电信业务经营许可证》 苏ICP备15040257号-8

    基于.NET程序默认启动线程数讲解 基于,.NET,程序,默认,启动,