tgoop.com/go_interview_lib/510
Last Update:
💬 В чем суть модели PMG в Go?
PMG расшифровывается как P (логические процессоры), M (машинные потоки) и G (горутины). Основная идея заключается в том, что каждый логический процессор (P) может одновременно работать только с одним машинным потоком (M). А чтобы горутина (G) могла выполняться, она должна быть привязана к потоку (M).
Это сводится к двум ключевым моментам:
1. Если у нас есть n
логических процессоров (P), мы можем параллельно запускать до n
горутин, при условии, что у нас доступно как минимум n
машинных потоков (M).
2. В любой момент времени только одна горутина (G) может выполняться на одном процессоре (P). Таким образом, когда P1 занят выполнением G, никакая другая G не может выполняться на этом P1, пока текущая G не будет заблокирована, не завершит выполнение или не произойдет что-то, что освободит этот процессор.
BY Библиотека Go для собеса | вопросы с собеседований

Share with your friend now:
tgoop.com/go_interview_lib/510