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

قفل مفسر سراسری  مکانیزمی است که برای همگام سازی اجرای ریسه‌ها در مفسر زبان‌های برنامه‌نویسی مورد استفاده قرار می‌گیرد به طوری که تنها یک ریسه می‌تواند در یک زمان اجرا شود. مفسری که همیشه از GIL استفاده می‌کند فقط قادر به یک اجرای یک ریسه در یک زمان است حتی اگر اجرا بر روی یک پردازنده چند هسته ای انجام شود.

 مفاهیم فنی 
در یک زبان برنامه نویسی قفل مفسر سراسری یک قفل انحصار متقابل در نظر گرفته می‌شود که باعث جلوگیری از اشتراک گذاشتن کد ما بین دیگر ریسه‌ها و یک ریسه ناامن است. در پیاده‌سازی با این قفل، همیشه برای یک ریسه یک قفل در نظر گرفته می‌شود.

برنامه‌های کاربردی در حال اجرا که از این قفل بهره می‌برند می‌توانند با استفاده از فرایندهای جداگانه به رایانش موازی دست یابند و هر فرایند مفسر خود و هر مفسر قفل خود را دارا است در غیر این صورت قفل می‌تواند مانع قابل توجهی برای رایانش موازی باشد.

 اشکالات 
استفاده از این قفل در یک زبان به‌طور مؤثر میزان راینش موازی را از طریق هم‌روندی یک پردازنده با چندین ریسه محدود می‌کند.

دلایل به کارگیری یک قفل عبارتند از:
 افزایش سرعت برنامه‌های تک‌روندی (بدون ضرورت به دست آوردن و یا آزادسازی قفل در تمام ساختارهای داده ای جداگانه)
 ادغام سازی آسانِ کتابخانه‌های C که معمولاً روندهای ناامن دارند
 سهولت پیاده‌سازی

 مثال 
در زبان‌های زیر به صورت گسترده از این قفل استفاده شده است:
+زبان‌های استفاده کننده از GILزبانمفسرپایتونسی‌پایتونروبیRuby MRI

 جستارهای وابسته 
 ریسه‌های سبز
 قفل بزرگ

 منابع 

رده:پایتون (زبان برنامه‌نویسی)
رده:کنترل همروندی