تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
كيف أمنع تجمد البرنامج عند Loop ؟
#1
عند استخدام Loop مع عدد كبير مع العناصر يحدث تجمد للبرنامج واسوداد للشاشة يمكن منع هذا التجمد عن طريق Threading

لكن عند تطبيقه على الشكل التالي

كود :
Task t = new Task(() =>
           {
               //loop
           });
           t.Start();

ينعدم أو على الاقل يقل التجمد ويختفي اسواد الشاشة لكن عند انتها العملية تبقى النافذة معلقة لفترة قبل ان تستجيب؟ يعني التجمد ياتي بعد الانتهاء!


ما الحل جزاكم الله خيرا؟

ونفس الشيء مع استخدام BackgroundWorker
ما دام اللوب شغال الامور طبيعية لكن عند تمام العملية ياتي التعليق لفترة 
الرد }}}
تم الشكر بواسطة:
#2
تم حل المشكل والحمد لله وللفائدة أن هذا يقع عند التعامل مع كائن داخل Threading أو BackgroundWorker
وكنت أعطي قيمة الـ ProgressBar داخلها وكان هذا يسبب توقف وتجمد للبرنامج بعد انتهاء اللوب ولكن لما جعلت اسناد القيمة للـ ProgressBar  قبل استدعاء BackgroundWorker وترك الاظهار والاخفاء داخله تمت العملية بنجاح
الرد }}}
تم الشكر بواسطة: عبد العزيز البسكري , elgokr
#3
هل جربت async, await

الرد }}}
تم الشكر بواسطة: elgokr , abozeyd
#4
حاولت تجربتها بعد تنبيهك أخانا الكريم واستاذي القديم محمد كريم لكن لم تفلح مع ما اريد فليس لي بها كبير المام

BackgroundWorker معها مشت الامور على التمام بكل التفاصيل التي اردتها التشغيل المنفصل الايقاف للوب عندما أريد 

لكن يبقى السؤال قائما 

ايهما أفضل استعمال الباك قروند ورك أم استعمال التاسك؟
كذلك الذي فهمته من 
Async - Await
أنها تقوم بايقاف الكود عند نقطة معينة حتى يتم ما يوجد عندها ثم تواصل العملية فإذا كان الأمر كذلك فليس هذا مرادي
الرد }}}
تم الشكر بواسطة:


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  [سؤال] جعل البرنامج ديناميكي اثناء عملية التنصيب Amr0 4 543 26-09-24, 11:45 PM
آخر رد: Amr0
  مثال لربط البرنامج بجهاز قارء الباركود anes 5 2,109 10-04-23, 03:14 PM
آخر رد: assuhimi
  هل هناك طرق لعمليات البحث في المصفوفة غير for loop osama623 2 974 21-11-22, 08:42 PM
آخر رد: Mtaktak
  كيفية تثبيت الخطوط عند المستخدم بمجرد تنزيل البرنامج osama623 1 1,081 18-11-22, 02:07 PM
آخر رد: alfaiz678
  ممكن مساعدة في حل مشكل البرنامج crazykinko 0 945 03-11-22, 05:03 PM
آخر رد: crazykinko
  [سؤال] استيراد بيانات اصناف من الاكسيل لقاعدة بيانات البرنامج sql mazentq 8 2,945 09-07-22, 01:17 PM
آخر رد: asemshahen5
  مشكله فى اغلاق البرنامج khataan88 1 1,104 28-05-22, 06:50 AM
آخر رد: khataan88
  [C#.NET] كيف اجعل قاعدة البينات في البرنامج يعمل عليها اكثر من مستخدم عبدالرحمن محمدين السيد 1 1,378 10-01-22, 08:58 PM
آخر رد: سعود
  السلام عليكم مشكله عند تشغل البرنامج بعد تثبيته من الحزمة Ikramynasr 1 1,315 01-12-21, 08:41 PM
آخر رد: asemshahen5
  [C#.NET] إرسال إيميل من البرنامج sniperjawadino 1 1,469 07-10-21, 12:29 AM
آخر رد: sniperjawadino

التنقل السريع :


يقوم بقرائة الموضوع: