سؤال

امسك بالقش هنا ...أنا أعمل مع نظام سطح المكتب VB6 باستخدام العديد من قواعد بيانات Access بنمط 2003 (.MDB).لقد قمت مؤخرًا بتغيير الوظيفة الأولى من VB6 إلى VB.NET، ولا أزال أستخدم قاعدة بيانات Access.هذا أكثر من مجرد تحويل، ولكنه إعادة كتابة مع وظائف إضافية.إنها لا تزال وظيفة بسيطة إلى حد ما، مع قاعدة بيانات منخفضة الحجم.لدينا 1400 عميل، وشركات صغيرة ذات خصائص مختلفة للآلات.معظم العملاء سعداء بالشاشة والوظائف الجديدة.لقد واجه عدد قليل جدًا من هؤلاء العملاء بطءًا شديدًا في تحميل datagridview.تخبرنا خدمة العملاء أن 1) تحتوي الأجهزة على 1 جيجابايت على الأقل من ذاكرة الوصول العشوائي (RAM)، و2) تؤدي إعادة التشغيل دائمًا إلى حل المشكلة.

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

أي اقتراحات؟

شكرًا!!

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

المحلول

يمكن أن تؤدي إعادة التشغيل أثناء تحديث قاعدة بيانات الوصول إلى حذفها.

أنت بحاجة إلى مزيد من المعلومات حتى يكون لديك فهم أفضل لما يحدث.إنهم بحاجة إلى جمع بعض المعلومات لك على محطة العمل التي تواجه المشكلة.باستخدام مدير المهام، يمكنك جعلهم يحصلون على المعلومات التالية:

  • استخدام وحدة المعالجة المركزية
  • ما هي المهمة التي تستهلك أكبر قدر من وحدة المعالجة المركزية؟
  • ذروة الذاكرة (المخصصة) على نظام XP - لا يوجد ما يعادلها على نظام التشغيل Vista
  • إجمالي الذاكرة (المخصصة) على نظام XP - لا يوجد ما يعادلها على نظام التشغيل Vista
  • الذاكرة (المادية) المتوفرة على نظام XP - مجانًا على نظام التشغيل Vista (التي أصبحت عديمة القيمة بواسطة Superfetch)

من الممكن أيضًا استخدام أداة سطر الأوامر "SYSTEMINFO" على كل من XP وVista للحصول على الذاكرة الإجمالية والمتاحة.إذا كان لديك القليل جدًا من البيانات المتاحة وعلى نظام XP، إذا كان إجمالي التزامك أكبر من الإجمالي الفعلي، فمن المرجح أنك تقوم بالتبديل ونقص الذاكرة (أو تسرب الذاكرة) هو سبب بطئك.

خلاصة القول هي أنك بحاجة إلى مزيد من المعلومات.قد يكون هناك تطبيق آخر على محطة العمل هو سبب المشكلة.لقد واجهنا موقفًا حيث واجه Notes 5.0 مشكلة حيث إذا تمت تغطية معظم النافذة بنافذة أخرى وتلقيت رسالة بريد جديدة، فإن استخدام وحدة المعالجة المركزية في Notes يصل إلى 100%.وقد أدى ذلك إلى تشغيل التطبيقات ببطء، وما لم تكن على محطة العمل تنظر إلى شاشة مراقبة المهام، فلن تخمن أبدًا أن تطبيق Notes هو سبب المشكلة.تم دائمًا استدعاء المشكلة في برنامج مختلف (البرنامج الموجود في المقدمة).يمكن لـ Access أيضًا استخدام وحدة المعالجة المركزية بنسبة 100% في أوضاع مختلفة على الرغم من أنه لا يبدو أنه يفعل أي شيء.

جمع أكبر قدر ممكن من المعلومات ما تستطيع.قد ترغب في كتابة vbscript أو برنامج سيجمع بعض المعلومات لك حتى يتمكن أي شخص يواجه المشكلة من تشغيله لجمع المعلومات قبل إعادة التشغيل.

سيوفر لك الملف الدفعي الذي يقوم بما يلي قدرًا كبيرًا من المعلومات:


@echo off
SystemInfo  >c:\systeminfo.log
tasklist /v >>c:\systeminfo.log

نصائح أخرى

ونحن لدينا تجربة مماثلة، ومعظم الحالات هي الأسباب التي كتبها مكافحة الفيروسات. أنها تحقق ملف في كثير من الأحيان (بعض antivures كل الوصول إلى الملفات).

لا، VB.Net يعمل بشكل ممتاز مع الوصول. سوف البيئات المشتركة القمامة الوصول.

ومنذ إعادة التشغيل لا يحل المشكلة وأود أن تتأكد من إغلاق اتصالات بشكل صحيح.

ويبدو وكأنه تسرب للذاكرة كبيرة بالنسبة لي.

وبعض العملاء سوف تترك التطبيق الخاص بك يعمل لفترة أطول من غيرها، وسوف يكون من الصعب ضرب.

وباستخدام Access حيث هناك أكثر من عدد قليل من المستخدمين المتزامنين يؤدي حتما إلى الألم.

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