سؤال

لدي عدد قليل من الخطوط الكبرى (~ 600K خطوط) مشاريع دلفي. وهي تشمل بعض المكونات المخصصة التي طورها فريقنا.

في كثير من الأحيان، عند استدعاء إكمال التعليمات البرمجية مع Ctrl + Space أو فقط عن طريق الضغط فقط "."، فإن IDE أقنز ويفكر بشدة حقا لفترة طويلة. في بعض الأحيان يمكن أن يكون التأخير دقيقة كاملة، أو أكثر. في أوقات أخرى، ينبثق على الفور مع اقتراحات.

ما هي العوامل التي تؤثر على أداء intellisense في دلفي؟ هل هناك أي طريقة يمكنني تحسين هذا الأداء؟

أفضل حل لي حتى الآن هو إيقاف تشغيل إكمال التلقائي، واستخدام مساحة CTRL + عندما أحتاج إلى التأمل بهدوء لمدة دقيقة أو نحو ذلك.

لا أستطيع إلا أن أذكر أن VS2005 و VS2008 و XCode يبدو أن كل شيء يعطي ردود الفعل الفورية الفعلية فعليا (على الرغم من أنني لم أحاول أبدا على مشروع هذا كبير).

كبديل، لقد عرضت هذا الاقتراح.

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

المحلول

تأكد من أن تشمل صراحة جميع الوحدات (*) المستخدمة من قبل مشروعك في DPR.
لا تعتمد على مسار البحث للعثور على وحدة يتم استدعاؤها من وحدة أخرى، قم بإضافته إلى DPR. سيكون DPR أطول بكثير ولكن جميع الأشياء ذات الصلة بالتجميع ستكون أسرع، بما في ذلك نظرة ثاقبة الكود.

(*) وليس وحدات المكونات المثبتة.

نصائح أخرى

Insight Insight Insight Delphi رمز التحويل البرمجي للقيام بتجميع حسب الطلب عندما يطلب المستخدم البصيرة رمز (CTRL + Space، "."، إلخ). تقوم هذه الترجمة حسب الطلب بتعيين في الوحدة ويتختزل عبر CodeGen، والربط، وما إلى ذلك حتى تصل إلى إزاحة الخاص بك الحالية في المخزن المؤقت للملف. مع وضع ذلك في الاعتبار، فإن قائمة الوحدة التي يراه التحويل البرمجي قبل أن تصل إلى موقعك الحالي، سيلعب عامل كبير في تحديد سرعة عملية Insight Office. قد تكون هناك وحدة (أو وحدات متعددة) التي تسبب تبعية نظام ملفات ضخمة، وما إلى ذلك. من الممكن تماما إعادة ترتيب جملة الاستخدامات، إعادة صبط جملة الاستخدامات لتكون في ملفات متعددة، أو إزالة الوحدات في جملة الاستخدامات التي تظهر T ضروري لوحدتك الحالية لتجميعها قد تحسن الأداء. بالإضافة إلى ذلك، قد يؤدي استخدام الحزم أو تقصير مسار بحث الوحدة إلى تحسين وقت استجابة CI.

لا أعرف الإصدار الذي تستخدمه، لكن إكمال الكود الأسرع بكثير هو أحد الأشياء التي أحبها أكثر عن دلفي 2009.

هذه قضية طويلة الأمد مع دلفي، واضطر إلى اللجوء إلى إخراج الإكمال التلقائي. بعد العمل بهذه الطريقة لفترة من الوقت، كنت سعيدا جدا به. حتى لو كان الأمر جزءا بسيطا فقط من الثانية، فإن وجود IDE تأرجح كتبي هو disconcerting وانقطع تدفقي. أجمل بكثير مع أتمتة قبالة، المنظمة البحرية الدولية.

لقد صادفت هذه المشكلة بنفسي، قمت بإصلاحها عن طريق إزالة رابط شبكة ميتة من مسار مكتبة البيئة. حل مشكلتي 100٪.

هل تضمين أدلة المصادر لفرقك مكونات مخصصة لتكون في مسار المكتبة؟ سيكون من المثير للاهتمام رؤية اختلاف السرعة إذا كانت ملفات DCU فقط في مسار المكتبة، مقابل وجود ملفات المصدر هناك أيضا.

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