다중 프로세스 문서를 보면 os.fork() 또는 mutiprocess에 의해 생성된 하위 프로세스의 메모리와 메인 프로세스 사이에 쓰기 시 복사 메커니즘이 있다는 설명을 봤습니다. 메인 프로세스의 메모리를 복사합니다.
본 문서가 Linux에 있어서 Windows에서 테스트해봤습니다.
메인 프로세스에서 더 큰 문서를 읽어 프로세스를 생성하고, 하위 프로세스를 직접 생성합니다.
비교 후 프로세스 중 하나만 더 큰 메모리 공간을 차지합니다.
죄송합니다. Python이 Windows에서 하위 프로세스를 생성하면 기본 프로세스의 메모리를 복사하나요? 복사가 발생하는 경우 하위 프로세스를 생성하거나, 하위 프로세스를 시작하거나, 쓰기 시 복사가 발생하는 단계는 무엇입니까? 파이썬의 다양한 사용법을 좀 더 자세하고 체계적으로 설명하는 책이 있나요?
滿天的星座2017-06-12 09:25:56
写时复制(COW)
只是对于fork
实现而言, 但是在windows
是直接CreateProcess
, 应该是不会有这个过程, 具体可以谷歌下CreateProcess
원리 및 구현은 다음 링크를 참조할 수도 있습니다.
창에서 프로세스 생성, CreateProcess()에 대한 자세한 설명 및 사용법