2015-09-10 120 views
1

我有一個模板文件,用於根據參數列表製作大量新文件。由於我打算製作4000個文件,我嘗試使用多處理模塊模塊。 的代碼是關於這樣的:使用python從多個進程讀取相同的文件

from multiprocessing import Pool 

def make_file(x): 
    Read textfile 
    Use x to change it 
    Save it with a new name  

if __name__ == '__main__': 
     paramters = about 4000 parameters 
     p = Pool(5) 
     p.map(make_file,parameters) 

但是,當我試了一下,掛上約2000文件提出後。使用多個進程從同一文件讀取它是否愚蠢?

+1

在嘗試編輯文件之前,您應該獲取文件鎖定。否則會出現競爭狀況,並且結果文件可能會損壞。 –

+0

停止創建文件的確切數量實際上很重要,因爲您可能正在文件系統中遇到技術限制。請提供有關路徑和文件的更多信息 –

回答

0

也許你可以發佈與打開模板文件和創建新文件相關的代碼。在文件名創建中,你可能會有類似散列衝突的事情。

相關問題