PDA

View Full Version : سوال: افزایش حجم برنامه در رم به ازای هر بار لود دیتا !!



saied7468
جمعه 16 اردیبهشت 1390, 12:09 عصر
سلام
من برای لود اطلاعات از دیتا تیبل استفاده می کنم و بعد از هر با استفاده اونو پاک می کنم اما با اینکه دیتا های توی دیتا تیبیل رو پاک می کنم به ازای لود دوباره دیتا به حجم برنامه توی رم اضافه مثلا اگه 30 مگ هست وقتی دیتا لود می شه حجم می شه 32 مگ و وقتی دوباره لود بشع می شه 34 مگ!!
اینم نحوه کد نویسی :
DataTable dtfindInvGds = new DataTable();
dtfindInvGds = db.SelectAllData("FindInvGds", "", ip, user, pass, bank);


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

dtfindInvGds.Clear();

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

ژوپیتر
جمعه 16 اردیبهشت 1390, 14:49 عصر
باید Dispose کنید و Clear تنها باعث میشه هر دفعه که New می کنید قبلی در حافظه باقی بمونه.

saied7468
جمعه 16 اردیبهشت 1390, 16:39 عصر
ممنون از جوابتون اما فرقی نکرد همچنان به حجم برنامه توی رم اضافه می شه :ناراحت:

Directx
جمعه 16 اردیبهشت 1390, 18:01 عصر
کدتو( اونایی که شیئ ایجاد می کنه یا آدرس میدی) رو تو بلاک using بذار و امتحان کن

ژوپیتر
جمعه 16 اردیبهشت 1390, 18:38 عصر
Dispose فقط برای Datatable نه، هر آیتمی که Add میشه خودش جداگانه باید Dispose شه، انگار یه Link List رو تنها Head ش رو Dispose کنی در صورتی که باید دونه دونه هر کدوم رو Dispose کنی.