کلمه جو
صفحه اصلی

قفل مفسر سراسری

دانشنامه عمومی

یک قفل مفسر سراسری (GIL) مکانیزمی است که برای همگام سازی اجرای ریسه ها در مفسر زبان های برنامه نویسی مورد استفاده قرار می گیرد به طوری که تنها یک ریسه می تواند در یک زمان اجرا شود. یک مفسر که همیشه از GIL استفاده می کند فقط قادر به یک اجرای یک ریسه در یک زمان است حتی اگر اجرا بر روی یک پردازنده چند هسته ای انجام شود. برخی از مفسرهای محبوب که از GIL استفاده می کند عبارت اند از: CPython و Ruby MRI.
افزایش سرعت برنامه های تک روندی (بدون ضرورت به دست آوردن و یا آزادسازی قفل در تمام ساختارهای داده ای جداگانه)
ادغام سازی آسانِ کتابخانه های C که معمولاً روندهای ناامن دارند
سهولت پیاده سازی
قفل مفسر سراسری (GIL) یک قفل انحصار متقابل که توسط مفسر ریسه ناامن یک زبان برنامه نویسی برای جلوگیری از به اشتراک گذاری کد ما بین دیگر ریسه ها است. در پیاده سازی با GIL، همیشه برای یک ریسه یک GIL در نظر گرفته می شود.
برنامه های کاربردی در حال اجرا که از GIL بهره می برند می توانند با استفاده از فرایندهای جداگانه به رایانش موازی دست یابند و هر فرایند مفسر خود و هر مفسر GIL خود را دارا استد در غیر این صورت GIL می تواند مانع قابل توجهی برای رایانش موازی باشد.
استفاده از قفل مفسر سراسری در یک زبان به طور مؤثر میزان راینش موازی را از طریق هم روندی یک پردازنده با چندین ریسه محدود می کنید.


کلمات دیگر: