Как многопроцессор Python реализован в Windows?

Учитывая отсутствие вызова fork () Windows, как пакет многопроцессорности в Python 2.6 реализован под Windows? В дополнение к потокам Win32 или какой-то поддельной вилке или просто совместимости поверх существующей многопоточности?

Это делается с помощью вызова подпроцесса в sys.executable (т. Е. Запускает новый процесс Python), а затем сериализует все глобальные переменные и отправляет их по каналу. Бедное человеческое клонирование текущего процесса. Это является причиной дополнительных ограничений, обнаруженных при использовании многопроцессорной обработки на платформе Windows.

Вы также можете быть заинтересованы в том , чтобы поговорить с Джесси Ноллером из PyCon о многопроцессорности, где он обсуждает его использование.