ตัวรวบรวมขยะ (อย่างน้อย Mono's และ. NET) บางตัวมีพื้นที่หน่วยความจำระยะสั้นซึ่งสแกนบ่อยและพื้นที่หน่วยความจำรองที่สแกนน้อยกว่า โมโนเรียกสถานเลี้ยงเด็กแห่งนี้
เพื่อค้นหาว่าวัตถุใดที่สามารถกำจัดได้พวกมันจะสแกนวัตถุทั้งหมดที่เริ่มต้นจากรากสแต็คและรีจิสเตอร์และกำจัดวัตถุทั้งหมดที่ไม่ได้ถูกอ้างอิงอีกต่อไป
คำถามของฉันคือพวกเขาป้องกันไม่ให้หน่วยความจำที่ใช้งานทั้งหมดถูกสแกนในการรวบรวมทุกครั้งหรือไม่ โดยหลักการแล้ววิธีเดียวที่จะค้นหาว่าวัตถุใดไม่ได้ใช้งานอีกต่อไปคือการสแกนวัตถุทั้งหมดและการอ้างอิงทั้งหมด อย่างไรก็ตามนี่จะเป็นการป้องกันไม่ให้ระบบปฏิบัติการแลกเปลี่ยนหน่วยความจำแม้ว่าแอปพลิเคชั่นจะไม่ได้ใช้งานและรู้สึกว่าเป็นงานที่ต้องทำจำนวนมากเช่นกันสำหรับ "Nursery Collection" ไม่รู้สึกว่าพวกเขาชนะมากจากการใช้เรือนเพาะชำ
ฉันทำบางสิ่งบางอย่างหายไปหรือว่าตัวรวบรวมขยะกำลังสแกนวัตถุทั้งหมดและทุกการอ้างอิงทุกครั้งที่มีการรวบรวมหรือไม่