سؤال

أحتاج إلى ملف تعريف C#.

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

أي توصيات؟

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

المحلول

يمكنك تجربة ما يلي:


يحرر:تم استبدال Nprof بـ SlimTune ويعمل مع تطبيقات .Net 4.0

نصائح أخرى

إستعملت ملف تعريف النمل في مشروع C# كبير منذ عام ونصف.لقد كان أداؤه جيدًا حقًا مقابل تكلفته، بل وتفوق على عدد قليل من المنافسين الأكثر تكلفة.

يقوم بحساب التكلفة بدقة سطرية تقريبًا.

ال ملف تعريف EQATEC جيد جدًا وهو مجاني تمامًا.إنه سهل الإعداد والاستخدام، ولا يبدو أنه يضيف الكثير من العبء إلى التطبيق.لقد بدأت للتو في استخدامه اليوم ووجدت بالفعل بعض الاختناقات التي لم أكن لأكتشفها بطريقة أخرى.

com.dotTrace من JetBrains يستخدم على نطاق واسع.

باتريك سماتشيا رائع نديبند ممتاز لتوفير التحليل الثابت.

أحافظ على شاملة قائمة ملفات التعريف لـ .NET على SharpToolbox.com.

ستجد هناك الأدوات المقترحة هنا والمزيد، كل منها مع وصف موجز لما تقترحه.

من المثير للاهتمام أنه لم يذكر أحد أن هناك واحدًا في الإصدارات المتطورة من Visual Studio - لقد وجدت دائمًا أن هذا جيد بما يكفي لتوصيف التنفيذ.بالنسبة إلى ملفات تعريف الذاكرة، أستخدم Memory Profiler الذي سبق ذكره، ولكن ليس كذلك ما أود أن أصفه عمومًا بـ "ملف التعريف".

ما نوع التوصيف الذي كنت تحاول القيام به؟

نحن نستخدم ملف تعريف النمل حيث أعمل.أنه يعطي معلومات مفصلة للغاية بطريقة بسيطة.

نحن نستخدم .NET منشئ ملفات تعريف الذاكرة.إنه قبيح نوعًا ما ولكنه مفيد جدًا للعثور على مراجع متدلية.

لقد حاولت أصلا الملف التعريفي لـ ANTS الخاص بـ Red Gate وهو أمر مثير للغاية، ولكن من وجهة نظر تسرب الذاكرة فهو سيء للأسباب التالية:

1) إنه بطيء بشكل يبعث على السخرية.استغرق الأمر نصف ساعة للوصول بالتطبيق إلى حالة بدء التسجيل (يستغرق 20 ثانية بدون البوابة الحمراء).

2) يحتاج Red Gate إلى تشغيل أداته الخاصة على أداته الخاصة.لقد كان يستخدم 900 ميجابايت من الذاكرة عندما انتهيت من لقطتين!ثم تحطمت :(

ومع ذلك، كان عنصر التوقيت في Red Gate ANTS مثيرًا للإعجاب.فقط لا تهتم بملف تعريف الذاكرة، إلا إذا كنت تتعامل مع تطبيق تافه (صغير الحجم).

لقد استخدمت AQtime ولم يخذلني أبدًا.أنا متأكد من أن هناك نسخة تجريبية.

سأحتل المركز الثاني ملف التعريف ANTS الخاص بالبوابة الحمراء.لقد استخدمته لتتبع بعض مشكلات الأداء المزعجة حقًا وكان سهل الاستخدام للغاية (منحنى التعلم المنخفض) وقدم بيانات لطيفة ومفصلة بطريقة يسهل فهمها.السعر يستحق ذلك، لكنه ليس مجانيًا..

إن Ndepend الرائع في باتريك سموشيا ممتاز لتوفير تحليل ثابت.

أوصي تمامًا بـ NDepend للتحليل الثابت، ولكن كن حذرًا من أنك ربما ستحتاج إلى تخصيص يوم أو يومين لتحليل حمولة الشاحنة من المعلومات التي توفرها بالإضافة إلى معرفة ما تعنيه جميع الإحصائيات فعليًا من حيث الكود الخاص بك.

لقد حالفني الحظ مع ملف تعريف ذاكرة .NET

قام ملف تعريف EQATEC بالمهمة هنا.

الإصدار الحالي من تطوير حاد (3.1.1) لديه ملف تعريف متكامل لطيف.إنه سريع جدًا، ويتكامل جيدًا مع SharpDevelop IDE ومشغل NUnit الخاص به.يتم عرض النتائج بأسلوب شجرة/قائمة مرنة (استخدم LINQ لإنشاء التحديد الخاص بك).يؤدي النقر المزدوج على الطريقة المعروضة إلى الانتقال مباشرة إلى الكود المصدري.

لا تستخدمها حاليًا، أحد أصدقائي يهذي بملف تعريف النمل.أعلم أنه منتج مدفوع الأجر ولست متأكدًا من مدى تكلفته.إذا قمت بتعيين أحد MVP، فقد تتمكن من الاستفادة من ذلك للحصول على ترخيص مجانًا.

AQTime (كل من الأداء والذاكرة) أو ANTS (ملف تعريف الأداء v4 أو ملف تعريف الذاكرة v5 beta) هنا.

لقد وجدت .NET منشئ ملفات تعريف الذاكرة أمس، ويجب أن أقول إنني معجب جدًا به.
سأطلب رخصتي اليوم.

على الرغم من أنه ليس جيدًا جدًا في تحديد استخدام الذاكرة، إلا أن ملف التعريف المضمن في بعض إصدارات Visual Studio يقوم بعمل جيد جدًا في تحديد سرعة التنفيذ.

ما هو هدفك؟

هل هدفك هو تحديد عبارات محددة والحصول على فكرة تقريبية عما تساهم به في إجمالي وقت التنفيذ، حتى تتمكن من إيجاد طرق للقيام بها بشكل مختلف؟

ولهذا أقسم بهذه الطريقة.

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