如果我使用这样的线程:
void foo()
{
new Thread().Start();
}
由于没有引用Thread对象,它会在指定的工作完成之前由GC处理吗?
答案 0 :(得分:2)
线程应保持活动状态,直到其方法返回。
答案 1 :(得分:2)
没有必要保留一个 一旦你引用了Thread对象 已经开始了这个主题。线程 继续执行直到线程 程序完成。
System.Threading.Thread类实际上只用于簿记/管理。它不是创建/维护线程的实际机制。这由运行时管理,并且是特定于CLI的实现(例如,Mono实现在线程管理方面可能会有很大差异。)