پاسخ هوش مصنوعی
CLR که مخفف "Common Language Runtime" است، یکی از اجزای اصلی فریم ورک دات نت (NET Framework) به شمار می رود. این محیط اجرایی مسیول مدیریت اجرای برنامه های دات نت است و امکانات مختلفی را برای توسعه دهندگان فراهم می آورد.
CLR وظایف زیر را انجام می دهد:
- مدیریت حافظه: CLR مسیول تخصیص و آزاد کردن حافظه برای برنامه ها است و مدیریت زباله (Garbage Collection) را انجام می دهد تا از نشت حافظه جلوگیری کند.
- امنیت: CLR مکانیزم های امنیتی را پیاده سازی می کند تا از اجرای کدهای خطرناک جلوگیری شود.
- اجرا و کمپایل: کدهای نوشته شده به زبان های مختلف دات نت مانند C#، VB.NET و F# به زبان میان رده (Intermediate Language یا IL) کمپایل می شوند و سپس CLR آن ها را اجرا می کند.
- پشتیبانی از زبان های مختلف: CLR به برنامه نویسان این امکان را می دهد که از زبان های مختلف دات نت استفاده کنند و این زبان ها بتوانند به سهولت با یکدیگر تعامل داشته باشند.
- اشکال زدایی و استثناها: CLR قابلیت های خوبی برای اشکال زدایی و مدیریت استثناها فراهم می آورد که به توسعه دهندگان در شناسایی و برطرف کردن خطاها کمک می کند.
به طور کلی، CLR قلب فریم ورک دات نت را تشکیل می دهد و نقش حیاتی در اجرا و مدیریت برنامه های دات نت دارد.
در مورد اینکه مفهوم CLR چیست به صورت خلاصه میشه تعریف زیر رو ارائه داد :
هسته ی مرکزی دات نت با عنوان Common Language Runtime یا CLR شناخته میشود.
این هسته شامل کدهای Garbage Collection و Just In Time Compiler میشود و رابط بین برنامه های دات نت و سیستم عامل است.
بخش بزرگی از سورس CLR با زبان سی شارپ نوشته شده است اما برای کدهای GC و JIT و بعصی موارد دیگر از ++C و Assembly نیز استفاده شده است.
سورس CLR باز است و می توانید از Github دانلود کنید.
CLR یا Common Language Runtime
مهمترین قسمت پلتفرم دات نت یا همون CLR در واقع ماشین مجازی یا Virtual Machine دات نت فریمورک هست که وظیفه مدیریت اجرای برنامه های دات نتی رو بر عهده داره. در این محیط مجازی در زمان اجرا فرایندی با نام JIT یا Just In Time Compilation کار کامپایل کدهای CIL به زبان ماشین رو انجام میده. CLR سرویسهای متعدد دیگه ای مثل مدیریت حافظه و garbage collection، مدیریت خطاها، مدیریت ثردها (Thread Management) و ... رو هم فراهم میکنه. CLR درواقع پیاده سازی بخشی از CLI به نام VES یا Virtual Execution System تو دات نت فریمورک هست.
برای توضیحات بیشتر میتونید یک سرچ در گوگل بزنید.
- جلوگیری از اد شدن خودکار در گروه و کانال تلگرام
- کم کردن حجم فیلم توسط کد در Asp net core
- چه کسانی استوری تلگرام را می بینند ؟
- برای کسب و کار تلگرام پرمیوم بهتره یا واتس اپ بیزینس ؟
- جلوگیری از انتشار غیرمجاز مطالب در کانال های تلگرامی
- تفاوت های تلگرام و واتس اپ چیست ؟
- چرا استوری های واتس اپ برای دوستان نمایش داده نمیشن ؟
- چند تا استوری رایگان می تونیم تلگرام بذاریم ؟
- خطای Severity Code Description Project هنگام استارت پروژه
- کار نکردن navBar و sideBar در پروژه Asp.net core
- کار با CkEditor با قابلیت آپلود عکس
- خطا در ایجاد migration در Asp.net core
- تفاوت های Asp.net core و Asp.net mvc چیه؟
- دلیل اسپم شدن ایمیل های ارسالی از سرور
- نحوه لایه بندی پروژه Core و اضافه کردن به IIS
- ارسال ایمیل در Asp.net core
- آیا میشه در mvc core از کامپونت استفاده کرد
- آپلود فایل در Asp.net core چگونه است؟
- حذف کامل یک رکورد در جدول ریلیشن شده
- اشکال در آپلود فایل ویدیو در mvc core 2