PDA

View Full Version : using و dispose



fshb_ 1370
جمعه 23 فروردین 1392, 09:28 صبح
سلام
من در DB ناشی هستم و تازه شروع بع یادگیری linq to sql کردم.

using () در بدنه خود در انتها resource ی که داشته استفاده میکرده، حتما به صورت خودکار dispose() رو call میکنه؟
من میتونم using استفاده نکنم و هر جا دیگه نیازی به استفاده از resource نداشتم اون رو dispose کنم. درسته؟

می دونم سوالم شاید خیلی مبتدی باشه ولی لطف کنید به صورت ساده توضیح بدید.

مرسی دوستان

ali ghaemi
جمعه 23 فروردین 1392, 10:02 صبح
ببینید دوست عزیز بعضی شی ها هستند که unmanaged resources شناخته می شن یعنی Garbage Collector که وظیفه ی پارکسازی حافظه رو از شی های بلااستفاده داره قادر به مشاهده و پاکسازی آنها نیست مانند ا Win32 handle بنابراین شما باید خودتون وظیفه ی پاکسازی آنها رو هنگام عدم نیاز بر عهده بگیرید در غیر اینصورت حافظه سیستم شما بدون استفاده اشغال می شه و به زودی با کمبود حافظه مواجه می شید IDisposable در واقع یک Interface است که اجازه ی پیاده سازی تابع Dispose را برای شی مورد نظر به شما می ده (از مفاهیم شی گرایی )

http://barnamenevis.org/showthread.php?390731-using&p=1731886#post1731886

fshb_ 1370
جمعه 23 فروردین 1392, 20:00 عصر
ممنون دوست عزیز. من لینک رو خوندم. من کلاس DataContext که رابط با DB است رو وقتی داخل using به کار میبرم، این کلاس به صورت Default، IDisposable interface رو پیاده سازی کرده؟