.NET垃圾回收(GC)的工作流程是怎样的一个复杂且详尽的机制?