تحديد مقدار الذاكرة التي يستخدمها الفصل؟

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

  •  09-06-2019
  •  | 
  •  

سؤال

أحاول العثور على طريقة لتحديد مقدار الذاكرة التي يستخدمها فصل معين في .NET في وقت التشغيل.استخدام Marshal.SizeOf() تم إيقافه، لأنه يعمل فقط على أنواع القيمة.هل هناك طريقة للتحقق بالضبط من مقدار الذاكرة التي يستخدمها الفصل؟

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

المحلول

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

إليك زوجين يستحقان المحاولة:

نصائح أخرى

أوافق على أن ملف تعريف الذاكرة هو أسهل طريقة للحصول على المعلومات التي تبحث عنها.بالإضافة إلى الاثنين المذكورين سابقًا، أوصي بـ JetBrains com.dotTrace, ، وهو منشئ ملفات تعريف الأداء ومنشئ ملفات تعريف الذاكرة.

إذا كنت تريد أن تفعل ذلك بنفسك، وترغب في التعمق في أعماق CLR، فيمكنك استخدام .NET التنميط API, ، وهي واجهة برمجة تطبيقات غير مُدارة (كما تقول Microsoft):"يمكّن Profiler من مراقبة تنفيذ البرنامج من خلال وقت تشغيل اللغة المشتركة (CLR)." ليس مخصصًا للاستخدام غير الرسمي تمامًا ، ولكنه يحتوي على كمية هائلة من الوظائف.

ما عليك سوى الارتباط بسؤال SO ذي الصلة:

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