.NET 垃圾收集器在单独的线程中?

.NET Garbage Collector in a separate Thread?

是否可以 运行 在单独的线程中进行垃圾回收?这样它就不会阻塞进程的主线程?

是的,但是有一些配置可以让您在后台自动运行它。

请参阅 Garbage Collection process 上的这篇文章。 https://msdn.microsoft.com/en-us/library/ee787088(v=vs.110).aspx

后台 GC 已经发生在一个单独的线程上 - 这就是它 "background" 的原因 - 但 GC 生命周期的一部分必须阻止进程中的所有线程(不仅仅是主线程)才能完成 - 它是MS 已努力将不可避免的必要性降至最低 - 您可以通过巧妙地处理自己的对象生命周期、使用后备列表而不是大量 new/disposes 等

来促进它在代码中的使用