مشاهده نسخه کامل
: garbage collector
سلام بچه ها کسی راجع به garbage collector ها در C# اطلاعی داره؟!
hamidreza_buddy
25-10-2008, 22:58
Garbage Collection: در زبان برنامه نويسي سي شارپ ديگر نگراني از جهت مديريت اشياء در حافظه وجود ندارد به اين معني كه وقتي شما شيء ايجاد مي كنيد بعد از اينكه ديگر از آن شي ء استفاده نكرديد آن شيء به طور اتوماتيك از حافظه پاك خواهد شد. اين كار توسط GC يا همان Garbage Collector انجام مي شود.
روش كار GC به اين ترتيب است كه تا موقعي كه Referenceي به يك object وجود داشته باشد آن شيء در حافظه باقي خواهد ماند اما در صورتيكه Referenceي به آن شيء وجود نداشته باشد بعد از يك بازه زماني نامشخص آن شيء به صورت اتوماتيك از حافظه پاك خواهد شد. در مورد نحوه عملكردش بعدا بيشتر توضيح ميدم.
برگرفته از:
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
اگه سرچ بزنی هم مطالب زیادی رو اینترنت هست:
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
از توضیحاتتون ممنون
یعنی این Garbage collector کاری که می کنه اینه که خود کلاس رو در انتها خود به خود پاک میکنه
یعنی تو c# لازم نیست مثل c++ کلاسها رو در انتها حذف کنیم؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟
hamidreza_buddy
28-10-2008, 17:08
خیر!
خودش چک می کنه اگه هیچ اشاره گری به اون شئ وجود نداشت (یهنی اون تیکه از حافظه از هیج جایی قابل دسترس نبود) اون قطعه زباله! هست و اون رو حذف می کنه.
البته چون پردازش سنگینیه هر چند مدت یه بار (و یا در زمان های خاصی) اجرا میشه. همچنین دستوراتی هست که میشه اون رو بوسیله کد اجرا کرد.
vBulletin , Copyright ©2000-2025, Jelsoft Enterprises Ltd.