ความล้มเหลวในสิ่งที่เป็นนามธรรมไม่ใช่ความจริงที่ว่าขยะ - ไม่ใช่ - กำหนด แต่ในความคิดที่ว่าวัตถุ "สนใจ" ในสิ่งที่พวกเขามีการอ้างอิงถึงและไม่สนใจในสิ่งที่พวกเขาไม่ถือ การอ้างอิง เมื่อต้องการดูสาเหตุพิจารณาสถานการณ์ของวัตถุที่รักษาตัวนับความถี่ที่มีการวาดตัวควบคุมเฉพาะ ในการสร้างมันจะสมัครเป็นสมาชิกของ "สี" เหตุการณ์และในการกำจัดมันยกเลิกการเป็นสมาชิก เหตุการณ์การคลิกเพียงแค่เพิ่มฟิลด์และเมธอดgetTotalClicks()
จะส่งคืนค่าของฟิลด์นั้น
เมื่อวัตถุตัวนับถูกสร้างมันจะต้องทำให้การอ้างอิงถึงตัวเองจะถูกเก็บไว้ในการควบคุมมันตรวจสอบ ตัวควบคุมไม่สนใจวัตถุตัวนับและจะมีความสุขถ้าวัตถุตัวนับและการอ้างอิงนั้นหยุดอยู่ แต่ตราบใดที่การอ้างอิงนั้นมีอยู่มันจะเรียกตัวจัดการเหตุการณ์ของวัตถุนั้นทุกครั้ง มันวาดภาพตัวเอง การกระทำนี้ไร้ประโยชน์โดยสิ้นเชิงต่อการควบคุม แต่จะเป็นประโยชน์กับทุกคนที่เคยโทรหาgetTotalClicks()
วัตถุ
ถ้าเช่นมีวิธีการในการสร้างวัตถุ "โปรแกรมระบายสี" ตัวนับใหม่ให้ดำเนินการบางอย่างกับตัวควบคุมสังเกตว่ามีการทาสีตัวควบคุมซ้ำกี่ครั้งแล้วละทิ้งวัตถุตัวนับสีวัตถุจะยังคงสมัครรับข้อมูลเหตุการณ์ แม้ว่าจะไม่มีใครสนใจถ้าวัตถุและการอ้างอิงทั้งหมดหายไปอย่างง่ายดาย อย่างไรก็ตามวัตถุจะไม่มีคุณสมบัติในการสะสมจนกว่าจะมีการควบคุม หากวิธีนั้นเป็นวิธีที่จะเรียกใช้หลายพันครั้งภายในอายุการใช้งานของตัวควบคุม [สถานการณ์ที่เป็นไปได้] มันอาจทำให้หน่วยความจำล้น แต่สำหรับข้อเท็จจริงที่ว่าค่าใช้จ่ายของการร้องขอ N อาจเป็น O (N ^ 2) หรือ O (N ^ 3) เว้นแต่การประมวลผลการสมัครสมาชิกจะมีประสิทธิภาพมากและการดำเนินการส่วนใหญ่ไม่ได้เกี่ยวข้องกับการวาดภาพใด ๆ
สถานการณ์นี้สามารถจัดการได้โดยให้การควบคุมเก็บการอ้างอิงที่อ่อนแอไปยังวัตถุตัวนับมากกว่าหนึ่งตัวที่แข็งแกร่ง รูปแบบการสมัครรับข้อมูลที่อ่อนแอมีประโยชน์ แต่ไม่ได้ผลในกรณีทั่วไป สมมติว่าแทนที่จะต้องการมีวัตถุที่ตรวจสอบเหตุการณ์ชนิดเดียวจากการควบคุมเดียวเราต้องการให้วัตถุ event-logger ที่ตรวจสอบการควบคุมหลายอย่างและกลไกการจัดการเหตุการณ์ของระบบนั้นแต่ละตัวควบคุมต้องการการอ้างอิง ไปยังวัตถุตัวบันทึกเหตุการณ์อื่น ในกรณีดังกล่าววัตถุที่เชื่อมโยงตัวควบคุมกับตัวบันทึกเหตุการณ์จะยังคงอยู่ตราบเท่าที่ทั้งสองการควบคุมที่ถูกตรวจสอบและตัวบันทึกเหตุการณ์ยังคงมีประโยชน์ หากทั้งตัวควบคุมและตัวบันทึกเหตุการณ์ไม่มีการอ้างอิงที่แข็งแกร่งถึงเหตุการณ์การเชื่อมโยงมันจะหยุดอยู่แม้ว่าจะยังมี "ประโยชน์" อยู่ก็ตาม หากทั้งสองมีเหตุการณ์ที่แข็งแกร่งอายุการใช้งานของวัตถุการเชื่อมโยงอาจขยายได้ไร้ประโยชน์แม้ว่าอีกคนหนึ่งตาย
หากไม่มีการอ้างอิงถึงวัตถุใด ๆ ในเอกภพวัตถุอาจถูกพิจารณาว่าไร้ประโยชน์และปลอดภัยจากการมีอยู่จริง ความจริงที่ว่าการอ้างอิงมีอยู่กับวัตถุอย่างไรก็ตามไม่ได้หมายความว่าวัตถุนั้น "มีประโยชน์" ในหลายกรณีประโยชน์ที่แท้จริงของวัตถุจะขึ้นอยู่กับการมีอยู่ของการอ้างอิงไปยังวัตถุอื่นซึ่งจากมุมมอง GC - ไม่เกี่ยวข้องกับพวกเขาทั้งหมด
หากมีการแจ้งเตือนวัตถุอย่างชัดเจนเมื่อไม่มีใครสนใจพวกเขาก็จะสามารถใช้ข้อมูลนั้นเพื่อให้แน่ใจว่าทุกคนที่จะได้รับประโยชน์จากความรู้นั้นจะได้รับการแจ้ง อย่างไรก็ตามในกรณีที่ไม่มีการแจ้งเตือนดังกล่าวไม่มีวิธีทั่วไปในการพิจารณาว่าวัตถุใดที่ถือว่าเป็น "ประโยชน์" หากมีใครรู้เพียงชุดของการอ้างอิงที่มีอยู่และไม่ใช่ความหมายเชิงความหมายที่แนบมากับการอ้างอิงเหล่านั้น ดังนั้นรูปแบบใดก็ตามที่ถือว่าการดำรงอยู่หรือไม่มีการอ้างอิงเพียงพอสำหรับการจัดการทรัพยากรอัตโนมัติจะถึงวาระแม้ว่า GC จะตรวจจับการละทิ้งวัตถุได้ทันที