ذاكرة لا يمكن الوصول إليها

في برمجة الحاسوب ، تُعرف الذاكرة غير القابلة للوصول بأنها كتلة من الذاكرة المُخصصة ديناميكيًا، حيث لا يملك البرنامج الذي خصصها أي مؤشر قابل للوصول إليها. وبالمثل، فإن الكائن غير القابل للوصول هو كائن مُخصص ديناميكيًا لا توجد له أي مرجع قابل للوصول. بعبارة أخرى، الذاكرة غير القابلة للوصول هي ذاكرة ديناميكية لا يستطيع البرنامج الوصول إليها مباشرةً، ولا يمكنه الوصول إليها بالبدء من كائن يمكنه الوصول إليه مباشرةً، ثم اتباع سلسلة من مراجع المؤشرات.

في تطبيقات تخصيص الذاكرة الديناميكية التي تستخدم جامع البيانات المهملة ، تُستعاد الكائنات بعد أن تصبح غير قابلة للوصول. يستطيع جامع البيانات المهملة تحديد ما إذا كان الكائن قابلاً للوصول؛ وأي كائن يُحدد أنه لم يعد قابلاً للوصول يمكن تحريره . تستخدم العديد من لغات البرمجة (على سبيل المثال، Java و C# و D و Dylan و Julia ) جمع البيانات المهملة تلقائيًا.

في المقابل، عندما يصبح الوصول إلى الذاكرة مستحيلاً في تطبيقات تخصيص الذاكرة الديناميكية التي تتطلب إلغاء تخصيص صريح، لا يمكن إلغاء تخصيص الذاكرة بشكل صريح. ويؤدي عدم إمكانية الوصول إلى الذاكرة في الأنظمة التي تستخدم إدارة الذاكرة اليدوية إلى تسرب الذاكرة .

تُطبّق بعض خوارزميات جمع البيانات المهملة المراجع الضعيفة . إذا كان الوصول إلى كائن ما ممكنًا فقط من خلال المراجع الضعيفة أو سلاسل المراجع التي تتضمن مرجعًا ضعيفًا، يُقال حينها إن الكائنيمكن لجامع البيانات المهملة التعامل معمخطط الكائنات ذي الوصول الضعيف على أنه غير قابل للوصول وإلغاء تخصيصه. (على العكس من ذلك، تُسمى المراجع التي تمنع جمع كائن ما بواسطة جامع البيانات المهملةبالمراجع القوية؛ الكائن ذو الوصول الضعيف غير قابل للوصول بواسطة أي سلسلة تتكون فقط من مراجع قوية). تتميز بعض لغات البرمجةكائنية التوجه التي تعتمد على، مثلجافاوبايثون،بالمراجع الضعيفة.حزمة جافاjava.lang.refالمراجع الناعمة والضعيفة والوهمية، مما ينتج عنه حالتا إمكانية الوصول إلى الكائنات الإضافيتان:الوصول الناعموالوصولالوهمي.

غالباً ما ترتبط الذاكرة التي لا يمكن الوصول إليها (في لغات مثل C التي لا تستعيد الذاكرة) بتقادم البرامج .

  • نيكولاس، إيثان (4 مايو 2006). "فهم المراجع الضعيفة" . java.net. مؤرشف من الأصل في 19 أغسطس 2010. تم الاطلاع عليه في 1 أكتوبر 2010 .