3

我通过 Richter 的书知道它是如何工作的一些细节,但我想在实践中“感受”它。我看到一些变体:

  1. 通过 .NET 标准编写我自己的 GC 实现(开个玩笑,我自己做这件事太硬核了 :)
  2. 研究 GC 的 MONO 实现 - 它有一些优点(例如,我可以使用调试器分析一些案例),但另一方面,它与阅读书籍并没有太大区别。顺便说一句,据我所知,MONO 的实现确实与微软的不同(如果我错了,请纠正我)。

那么,有什么建议吗?

4

1 回答 1

0

好吧,您可以编写一个资源密集型服务器应用程序,这将为您提供 GC 在高负载下的作用的要点。你可以选择任何你想要的东西,最好是网络服务器、MMO 服务器等。

您将看到 GC 在复杂情况下如何管理托管堆(尤其是异步套接字使 GC 非常不开心,这要归功于它们使用固定句柄),并且您可以尝试如何最好地分配不同类型的内存资源以使GC 的工作尽可能简单。

你可以编写自己的 GC,愚蠢的 GC 并不

于 2013-11-28T15:40:16.477 回答