سلام بچه ها کسی راجع به garbage collector ها در C# اطلاعی داره؟!
سلام بچه ها کسی راجع به garbage collector ها در C# اطلاعی داره؟!
برگرفته از:Garbage Collection: در زبان برنامه نويسي سي شارپ ديگر نگراني از جهت مديريت اشياء در حافظه وجود ندارد به اين معني كه وقتي شما شيء ايجاد مي كنيد بعد از اينكه ديگر از آن شي ء استفاده نكرديد آن شيء به طور اتوماتيك از حافظه پاك خواهد شد. اين كار توسط GC يا همان Garbage Collector انجام مي شود.
روش كار GC به اين ترتيب است كه تا موقعي كه Referenceي به يك object وجود داشته باشد آن شيء در حافظه باقي خواهد ماند اما در صورتيكه Referenceي به آن شيء وجود نداشته باشد بعد از يك بازه زماني نامشخص آن شيء به صورت اتوماتيك از حافظه پاك خواهد شد. در مورد نحوه عملكردش بعدا بيشتر توضيح ميدم.
اگه سرچ بزنی هم مطالب زیادی رو اینترنت هست:کد:برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
کد:برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنیدکد:برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
Last edited by hamidreza_buddy; 25-10-2008 at 23:09.
از توضیحاتتون ممنون
یعنی این Garbage collector کاری که می کنه اینه که خود کلاس رو در انتها خود به خود پاک میکنه
یعنی تو c# لازم نیست مثل c++ کلاسها رو در انتها حذف کنیم؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟
خیر!
خودش چک می کنه اگه هیچ اشاره گری به اون شئ وجود نداشت (یهنی اون تیکه از حافظه از هیج جایی قابل دسترس نبود) اون قطعه زباله! هست و اون رو حذف می کنه.
البته چون پردازش سنگینیه هر چند مدت یه بار (و یا در زمان های خاصی) اجرا میشه. همچنین دستوراتی هست که میشه اون رو بوسیله کد اجرا کرد.
هم اکنون 1 کاربر در حال مشاهده این تاپیک میباشد. (0 کاربر عضو شده و 1 مهمان)