PDA

View Full Version : سوال: ممانعت از اتفاق افتادن OutOfMemoryException



leilav_1984
سه شنبه 24 اردیبهشت 1387, 07:53 صبح
سلام در برنامه باید تعدادی فایل خیلی حجیم (نقشه scan شده با resolution خیلی خیلی بالا) رو باز کنم. ولی در حین این کار با OutOfMemoryException مواجه میشم
در این مورد چکار میشه کرد؟
آیا میشه حافظه ای رو که برنامه در اختیار داره افزایش داد؟

توضیح : فایلهای مورد نظر با برنامه های دیگه مثل Windows Picture and Fax Viewer یا Microsoft Office Document Imaging باز میشن البته زمان لودشون زیاده

naeeme
چهارشنبه 25 اردیبهشت 1387, 10:05 صبح
چه جالب! يكي بالاخره به اين مشكل برخورد! :چشمک:
من هم اين مشكل رو داشتم.
راه حلي كه استفاده كردم و بسيار عالي جواب داد اين بود كه به به تعدادي محدود، بلاكهايي از حافظه رو در يك آريه در ابتدا برنامه از حافظه بگيرين، هرجا كه به اين خطا برخوردين، يا احتمال ميدين كه برخورد كنين، حافظه اشغال شده رو رها كنين و بعد از رها كردن حافظه، حتما GC.Collect رو استفاده كنين.

leilav_1984
چهارشنبه 25 اردیبهشت 1387, 10:28 صبح
به تعدادي محدود، بلاكهايي از حافظه رو در يك آريه در ابتدا برنامه از حافظه بگيرين، هرجا كه به اين خطا برخوردين، يا احتمال ميدين كه برخورد كنين، حافظه اشغال شده رو رها كنين و بعد از رها كردن حافظه، حتما GC.Collect رو استفاده كنين.

ممکنه بیشتر توضیح بدید یا نمونه کد بذارین؟ ممنون میشم

پ.ن. : خودم عجله ای واسه حل مشکل ندارم ولی رئیسم شدیدا داره و اگه تا امروز به نتیجه نرسم پوستمو میکنه :عصبانی++:

naeeme
چهارشنبه 25 اردیبهشت 1387, 11:00 صبح
به پيغام هاي خصوصي مراجعه كنيد.

leilav_1984
یک شنبه 29 اردیبهشت 1387, 14:59 عصر
مشکل من همچنان باقیه...
کسی کمکی نمی کنه؟ :افسرده: