
نوشته شده توسط
farhad_shiri_ex
فلسفه dispose کردن اشیاء ایجاد شده در سی شارپ به این منظور هست که به GC اعلام میکنه که منابع اشغال شده توسط شی مورد نظر را زودتر از Heap خارج کنه !
حالا هر شی ای که از Object ارث بری کرده باشه ویا یک شی مقداری باشه که توسط ref رفرنس شی ارسال شده باشه می تونن از dispose استفاده کنند ولی همانطور که دوست عزیزمون هم اشاره کرد معمولا کاربردی نداره به این علت که احتمال از دست دادن داده ها خیلی زیاد هست وهمچنین در برنامه نویسی managed توصیه نمیشه استفاده از finalize , dispose
بنابراین در صورتی که بعد از چندبار اجرا شدن یک قسمت از برنامه دچار افت شدید پرفورمنس می شوید بهتره که کدهاتون را یک refactor کنید استفاده از آبجکتهای static , singletone و البته یکی از چالش های مهم برنامه نویسی سی شارپ به Boxing / Unboxing ها خیلی توجه داشته باشید.