![]() |
سوال ۳ زبان برنامه نویسی #C - نسخهی قابل چاپ +- تالار گفتگوی کیش تک/ kishtech forum (http://forum.kishtech.ir) +-- انجمن: پردیس فناوری کیش (http://forum.kishtech.ir/forumdisplay.php?fid=1) +--- انجمن: دانشگاه جامع علمی و کاربردی (http://forum.kishtech.ir/forumdisplay.php?fid=7) +---- انجمن: **مرکز علمی و کاربردی کوشا** (http://forum.kishtech.ir/forumdisplay.php?fid=42) +----- انجمن: برنامه سازی تحت وب - پنجشنبه ها از ساعت 8 تا 11 (http://forum.kishtech.ir/forumdisplay.php?fid=347) +----- موضوع: سوال ۳ زبان برنامه نویسی #C (/showthread.php?tid=115530) |
سوال ۳ زبان برنامه نویسی #C - Mohammadamin - 25-05-2025 3. یکی از ویژگیهای اصلی زبان C# که به مدیریت حافظه کمک میکند چیست؟ RE: سوال ۳ زبان برنامه نویسی #C - Vahid Rohollahi - 26-05-2025 یکی از **ویژگیهای اصلی** زبان **C#** که به **مدیریت حافظه** کمک میکند، ****سیستم جمعآوری زباله (Garbage Collection - GC)** است. ### **چگونه Garbage Collection در C# کار میکند؟** 1. **تخصیص خودکار حافظه:** - وقتی یک شیء (object) در C# ساخته میشود، حافظه بهصورت خودکار در **هیپ مدیریتشده (Managed Heap)** تخصیص مییابد. 2. **شناسایی اشیاء بیاستفاده:** - **GC** بهصورت دورهای اجرا میشود و اشیایی که **دیگر مورد ارجاع نیستند** (یعنی هیچ Reference فعالی به آنها وجود ندارد) را شناسایی میکند. 3. **آزادسازی حافظه:** - حافظهٔ اشیاء بیاستفاده را آزاد میکند و فضای هیپ را بهینهسازی مینماید. 4. **جلوگیری از نشت حافظه (Memory Leak):** - با این مکانیسم، نیاز به آزادسازی دستی حافظه (مثل `delete` در ++C) از بین میرود و احتمال خطاهای انسانی کاهش مییابد. ### **مزایای Garbage Collection در C#:** ✅ کاهش خطاهای مدیریت حافظه دستی ✅ بهبود امنیت و پایداری برنامه ✅ افزایش بهرهوری توسعهدهنده ### **نکات تکمیلی:** - در موارد خاص (مثل کار با منابع غیرمدیریتشده مانند فایلها یا اتصالات شبکه)، میتوان از **`IDisposable`** و **`using`** برای آزادسازی بهینهتر منابع استفاده کرد. - **GC** در **پلتفرم .NET** بهصورت بهینهسازی شده کار میکند و نسخههای جدید (مثل .NET 8) بهبودهای عملکردی قابل توجهی داشتهاند. اگر به دنبال **مدیریت حرفهایتر حافظه** هستید، میتوانید از **WeakReference** یا **Memory Management API** در .NET نیز استفاده کنید. ✌️ بهطور خلاصه، **Garbage Collection** یکی از قویترین مکانیزمهای C# برای مدیریت خودکار حافظه است که توسعه برنامههای ایمن و پایدار را تسهیل میکند. RE: سوال ۳ زبان برنامه نویسی #C - o.karvandi - 26-05-2025 (25-05-2025, 02:09 PM)Mohammadamin نوشته است: 3. یکی از ویژگیهای اصلی زبان C# که به مدیریت حافظه کمک میکند چیست؟ یکی از ویژگیهای اصلی زبان C# که به مدیریت حافظه کمک میکند، سیستم جمعآوری زباله (Garbage Collection - GC) است. RE: سوال ۳ زبان برنامه نویسی #C - علی رحیمی - 26-05-2025 یکی از ویژگیهای اصلی زبان C# که به مدیریت حافظه کمک میکند، سیستم Garbage Collection یا جمعآوری خودکار زباله است؛ این سیستم بهطور خودکار حافظه اشیایی که دیگر استفاده نمیشوند را آزاد میکند و نیازی به مدیریت دستی حافظه توسط برنامهنویس نیست. این باعث میشه برنامهنویسی راحتتر و خطاهای مربوط به نشت حافظه خیلی کمتر بشه RE: سوال ۳ زبان برنامه نویسی #C - Majid haghi - 28-05-2025 دانشگاه علمی کاربردی کوشا رشته فناوری اطلاعات و ارتباطات استاد رمضانی دانشجو مجید حقی یکی از ویژگیهای اصلی زبان C# که به مدیریت حافظه کمک میکند، سیستم جمعآوری زباله (Garbage Collection - GC RE: سوال ۳ زبان برنامه نویسی #C - davarzani - 28-05-2025 (25-05-2025, 02:09 PM)Mohammadamin نوشته است: 3. یکی از ویژگیهای اصلی زبان C# که به مدیریت حافظه کمک میکند چیست؟ پاسخ **ویژگی اصلی C# برای مدیریت حافظه ✅ **سیستم **Garbage Collection (GC) - **بهصورت خودکار** حافظهٔ استفادهنشده را آزاد میکند. - از **Memory Leak** جلوگیری میکند. - نیاز به مدیریت دستی حافظه (مثل ++C) را کاهش میدهد. داورزنی RE: سوال ۳ زبان برنامه نویسی #C - morteza azizi - 01-06-2025 یکی از ویژگیهای اصلی زبان C# که به مدیریت حافظه کمک میکند، سیستم جمعآوری زباله (Garbage Collection - GC) است. RE: سوال ۳ زبان برنامه نویسی #C - Hooman homapour - 02-06-2025 یکی از ویژگیهای اصلی زبان C# که به مدیریت حافظه کمک میکند، سیستم جمعآوری زباله (Garbage Collection - GC) است. |