Чем GVL/GIL в MRI Ruby отличается от полным CPU parallelism и когда что выбирать?
Что хотят услышать интервьюеры:
Сравнение: «GVL/GIL в MRI Ruby» обычно оценивают в паре с полным CPU parallelism. Выбор зависит от читаемости, Rails conventions, стоимости поддержки, безопасности, нагрузки и тестируемости.
Ответ:
Когда выбирать GVL/GIL в MRI Ruby: когда его свойства прямо решают задачу, а не просто выглядят привычно.
Плохой ответ: «так принято в Rails» без объяснения последствий.
threads = 4.times.map { Thread.new { io_call } }