文章詳情頁
windows python 子進程內存是否存在復制主進程情況
瀏覽:128日期:2022-06-29 13:41:34
問題描述
在查看多進程文檔的時候看到一段描述,os.fork()或者mutiprocess的創建的子進程和主進程的內存存在copy on write機制,也就是說子進程會復制主進程的內存。
因為看到的文檔是在linux上,所以在windows上測了下。在主進程中讀入一個較大的文檔再創建進程,和直接創建子進程。比較后,僅其中一個進程內存占用變大。
請問,在windows中 python創建子進程是否會拷貝主進程的內存?如果會拷貝是在哪個步驟出現,建立子進程,還是啟動子進程,或者是copy on write?有那些書比較詳細系統的說明python的各種使用?
問題解答
回答1:寫時復制(COW)只是對于fork實現而言, 但是在windows是直接CreateProcess, 應該是不會有這個過程, 具體可以谷歌下CreateProcess的原理和實現, 也能參考下面的鏈接:windows下創建進程,CreateProcess()詳解及用法
相關文章:
排行榜