بهذا المعنى ، يعد التخصيص الآلي للذاكرة الديناميكية أمرًا ضروريًا ، وهذا يعني عمليًا:نعم ، يتطلب هاسكل جامع قمامة، نظرًا لأن جمع القمامة هو أعلى أداء تلقائي مدير الذاكرة الديناميكي.
هل تمتلك هاسكل جامع قمامة؟
يستخدم نظام وقت تشغيل هاسكل جامع قمامة للأجيال (GC) مع جيلين2. يتم ترقيم الأجيال بدءًا من الجيل الأصغر عند الصفر. يتم تخصيص القيم دائمًا في جزء خاص من الجيل الأصغر يسمى الحضانة.
ما هي اللغة التي لا تحتوي على خدمة جمع القمامة؟
أمثلة: Ada و C و Fortran و Modula-2 و Pascal. يعتقد Bjarne Stroustrup أنه من الأفضل تصميم اللغة لجعل كل تكلفة صريحة ، و "عدم الدفع مقابل الميزات التي لا تستخدمها." (راجع أوراقه في مؤتمري ACM الثاني والثالث حول تاريخ لغات البرمجة.) لذلكC ++ليس لديه مجموعة قمامة.
ما الذي يقوم بجمع القمامة؟
جمع القمامة في Java هي العملية التي من خلالهابرامج Javaتؤدي الإدارة التلقائية للذاكرة. يتم تجميع برامج Java إلى رمز بايت يمكن تشغيله على Java Virtual Machine أو JVM لفترة قصيرة. عند تشغيل برامج Java على JVM ، يتم إنشاء الكائنات على الكومة ، وهي جزء من الذاكرة مخصص للبرنامج.
هل لغة C بها مجموعة من القمامة؟
C لا يحتوي على تلقائيجمع القمامة. إذا فقدت مسار شيء ما ، فهذا يعني أن لديك ما يُعرف باسم "تسرب الذاكرة". ستظل الذاكرة مخصصة للبرنامج ككل ، ولكن لن يتمكن أي شيء من استخدامها إذا فقدت المؤشر الأخير عليها. تعد إدارة موارد الذاكرة من المتطلبات الأساسية لبرامج C.