Использование многопроцессорной обработки в окнах, похоже, что все открытые дескрипторы файлов наследуются порожденными процессами. Это имеет неприятный побочный эффект от их блокировки.
Меня интересует: 
1) Предотвращение наследования 
2) Способ освобождения файла из порожденного процесса
Рассмотрим следующий код, который отлично работает на OSX, но падает на окна в os.rename
from multiprocessing import Process
import os
kFileA = "a.txt"
kFileB = "b.txt"
def emptyProcess():
    while 1:
        pass
def main():
    # Open a file and write a message
    testFile = open(kFileA, 'a')
    testFile.write("Message One\n")
    # Spawn a process
    p = Process(target=emptyProcess)
    p.start()
    # Close the file
    testFile.close()
    # This will crash
    # WindowsError: [Error 32] The process cannot access the file
    #               because it is being used by another process
    os.rename(kFileA, kFileB)
    testFile = open(kFileA, 'a')
    testFile.write("Message Two\n")
    testFile.close()
    p.terminate()
if __name__ == "__main__":
    main()
