PDA

View Full Version : حرفه ای: کمک در حل مشکل هنگ کردن برنامه



alimooghashang
شنبه 19 اسفند 1391, 11:25 صبح
سلام
من یه برنامه دارم که از روی شبکه اطلاعات رو از سیستم سرور میخونه و هر 30 40 ثانیه یک بار این عملیات انجام میشه
بعضی وقت ها برنامه هنگ میکنه و CPU usage به نزدیکای 80 درصد میرسه
چطوری باید این برنامه رو بفهمم چرا هنگ میکنه؟
مشکل از شبکه میتونه باشه؟

من داخل برنامه هیچ while یا چیزی ندارم که بخواد اونجا گیر بکنه
فقط تایمر هست و backgroundworker

ممنون

mehdi zanjani
شنبه 19 اسفند 1391, 11:39 صبح
از Thread استفاده کردی؟؟؟

alexmcse
شنبه 19 اسفند 1391, 12:45 عصر
زمان اجرای برنامه (لود شدن) زیاد است
بخاطر اینکه سی پی یو با لود زیاد روبرو میشود
ویا اینکه حافظه جانبی (مموری) کم است

this.DoubleBuffered = true;

alimooghashang
شنبه 19 اسفند 1391, 13:47 عصر
از Thread استفاده کردی؟؟؟
گفتم که فقط backgroundworker و timer

alimooghashang
شنبه 19 اسفند 1391, 13:47 عصر
زمان اجرای برنامه (لود شدن) زیاد است
بخاطر اینکه سی پی یو با لود زیاد روبرو میشود
ویا اینکه حافظه جانبی (مموری) کم است

this.DoubleBuffered = true;

بله زمان اجرا شدن اولین بار زیاده یعنی طول میکشه تا فرم باز بشه

alimooghashang
سه شنبه 24 اردیبهشت 1392, 21:14 عصر
جالبیش میدونین چیه؟
وقتی فرم رو minimize میکنم بعد که میخواد maximize بشه فرم هنگ میکنه
دلیلش چی میتونه باشه؟
من یه سری دکمه خودم ساختم و اونا رو component کردم
بخاطر اونا نیست؟
چطور میتونم ایرادش رو بفهمم چیه که هنگ میکنه
جالبیشم اینه که ترد برنامه داره کارش رو انجام میده
و فقط UI برنامه هست که مشکی میشه و هنگ میکنه

sgh_programer
سه شنبه 24 اردیبهشت 1392, 21:33 عصر
بنام خدا
سلام

وقتی فرم رو minimize میکنم بعد که میخواد maximize بشه فرم هنگ میکنه
احتمالا یکسری کد توی ریسایز فرم نوشتی .اونجا را چک کن .

alimooghashang
سه شنبه 24 اردیبهشت 1392, 21:40 عصر
نه
فقط داخل formload و formclose نوشتم
من حدس میزنم بخاطر کامپوننت هایی باشه که نوشتم
مثلا یه groupbox نوشتم و onpaint ش رو override کردم
یا دکمه هایی ساختم که سه حالته هستند
و داخل فرم از tablelayout استفاده کردم
ممنون

tooraj_azizi_1035
چهارشنبه 25 اردیبهشت 1392, 11:17 صبح
کدت رو بذاز.