لماذا٪ MEM يزداد تدريجيا على الرغم من أنني أستخدم الأرشيف :: قطران: مجري؟

StackOverflow https://stackoverflow.com/questions/666655

  •  21-08-2019
  •  | 
  •  

سؤال

وأنا باستخدام الأرشيف :: :: قطران المتدفقة لأرشفة دليل 4GB تحتوي صغيرة جدا ملفات التعليمات البرمجية المصدر الصغيرة وبعض الجرار. أنا باستخدام نظام مع 4GB RAM واستخدام الأرشيف :: :: قطران المتدفقة لأنني لا أريد بلدي الدليل بالكامل لتكون على الذاكرة كما أنه يؤدي إلى الخروج من حالة الذاكرة. I قراءة الملفات واحدا تلو الآخر من الدليل بطريقة DFS باستخدام ملف :: البحث والكتابة إلى ملف القطران باستخدام إضافة الأسلوب في الأرشيف :: :: قطران المتدفقة. في أي لحظة معينة من الزمن هو ملف واحد فقط يقيم في الذاكرة، وحتى ذلك الحين٪ MEM من عملية بيرل بلدي يزداد تدريجيا. انها حصلت على ما يصل إلى 20٪. لا يوجد أي ملف في دليل بلدي الذي هو من 800MB. لدي سؤالان هنا 1) لماذا٪ MEM يزداد تدريجيا؟ 2) لماذا يمتلك ذلك ارتفعت إلى 20٪. هل لأن الأرشيف :: قطران لا تحرير الذاكرة بعد أن تمت كتابة المحتويات إلى ملف القطران؟

هل كانت مفيدة؟

المحلول

وليس من الطبيعي للذاكرة المغلف VSZ لتنمو عند معالجة البيانات الخاصة بك بطريقة تركز على تيار، وmoreso لRES (٪ MEM) التي يجب أن تستقر عادة في النوع الخاص من التطبيق.

لذلك أشك بقوة أن إحالات إلى البيانات التي يجري الاحتفاظ بها في جميع أنحاء (على سبيل المثال في تجزئة)، أو (أقل احتمالا) يتم إنشاء هذا المراجع الدائرية.

وانظر هذا المنصب، <وأ href = "https://stackoverflow.com/questions/295385/are-there-any-tools-for-finding-memory-leaks-in-my-perl-program#295461" > "هل هناك أي أدوات للعثور على تسرب الذاكرة في برنامج بيرل بلادي" للحصول على نصائح حول تتبع أسفل المتغيرات التي (يكون لهم في التعليمات البرمجية أو في وحدة تستخدمه) تنمو المغلف الذاكرة أو الاحتفاظ إحالات حول .

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top