Причина, по которой pp
работает так, как он работает, заключается в том, что он создает свежий экземпляр интерпретатора Python для каждого работника, который полностью независим от всего, что выполнялось до или после.Это гарантирует отсутствие непреднамеренных побочных эффектов, таких как __future__
импорт, активный в рабочем процессе.Проблема в том, что все становится намного сложнее понять, и, по моему опыту с pp
, не особенно надежно.pp
пытается немного упростить задачу для пользователя, но, похоже, создает больше проблем, чем решает его усилия.
Если бы я писал код, которыйс самого начала был разработан для использования в кластере, я, вероятно, в итоге использовал бы pp
, но я обнаружил, что адаптация существующего кода для работы с pp
- это кошмар.