在回答关于SO的另一个问题*以及随后的评论讨论时,我遇到了一个我不清楚的问题.
在我误入歧途的任何地方纠正我......
当垃圾收集器收集一个对象时,它会在一个单独的线程上调用该对象的终结器(除非终结器已经被抑制,例如通过一个Dispose()方法).在收集时,GC会挂起除触发集合的线程(除了背景集合)之外的所有线程.
Dispose()
不清楚的是:
*链接到原始问题: .NET GC从终结器访问同步对象
c# garbage-collection finalizer
c# ×1
finalizer ×1
garbage-collection ×1