c#非常小的控制台应用程序中的默认线程(Visual Studio 2012)

Alo*_*lon 7 c# multithreading visual-studio-2012

我试图弄清楚每个新的c#应用程序中出现的线程的目的是什么.我用空的Main函数创建了一个新的控制台应用程序:

static void Main(string[] args)
{
}
Run Code Online (Sandbox Code Playgroud)

并在函数的末尾放置一个断点,然后我查看了线程窗口:

默认线程

有时它显示8个线程,有时7个线程.

任何人都可以解释所有这些线程的目的是什么,为什么我需要它们用于这样一个简单的项目?

Sad*_*ine 6

简而言之,这些额外的线程与GC,Finalizer,VS和Debugger相关.以下链接为您的问题提供了更详细的答案:

为什么这个简单的.NET控制台应用程序有这么多线程?