程序员常刷题GC 50行杰森·奥伦多夫2014年8月16日介绍程序中的所有内容都必须以某种方式在内存中表示:代码、数据、参数、变量。为所有这些东西找到一个位置并使其井井有条的任务称为内存管理。内存管理是关于知道把东西放在哪里。由于您的计算机的内存是一种有限资源,因此内存管理还涉及释放内存以便可以重复使用。作为应用程序程序员,您不必为程序中的每个对象都进行内存管理。但必须有人。系统会为您完成。正确的?这是如何运作的?嗯,有几种方法。但是现在通常的方法是垃圾收集。系统中有一些软件会自动获取您的程序不再使用的对象并回收该内存。当然,棘手的部分是弄清楚哪些对象没有被使用。事实证明,垃圾收集是分配和其他内存管理任务的一部分。不独立。我们今天展示的GC将包括它自己的分配器。你会明白为什么。实时编码部分应用程序接口当我们设计软件时,最好从公共部分开始。事实上,一个很好的方法是从测试开始,我们今天看到的GC是用C++编写的。如果您查看测试,您将看到垃圾收集器需要提供哪些公共功能。但是我们也可以从头开始弄清楚特征集。垃圾收集器为