大神們,能不能講一下,Python中多執行緒都要向同乙個檔案裡面寫的時候,該怎麼處理?

時間 2021-06-09 19:19:08

1樓:Mark Ma

from concurrent.futures import ThreadPoolExecutor,as_completed

from threading import Lock

import random

def fib(n):

if n > 30raise Exception('can not > 30, now %s' % n)

if n <= 2return 1

return fib(n-1) + fib(n-2)

if __name__=='__main__':

nums = [random.randint(0, 33) for _ in range(0, 10)]

fin = open('out.csv','a')

lock = Lock()

with ThreadPoolExecutor(max_workers=3) as executorfuturesfor n in numsjob = executor.submit(fib, nfutures[job] = n

for job in as_completed(futurestryre = job.resultn = futures[jobwith lockfin.write('fib(%s) result is %s.

\n' % (n, reexcept Exception as efin.write(str(e))

fin.close()

2樓:深海魚

其他執行緒把需要寫入的內容都放到Queue裡,專門開乙個執行緒從Queue中讀取並寫入檔案。

我摸索出來的,不知道有沒有更優雅的做法。

大神們能不能幫忙分析一下這個長難句的成分和意思

蠟筆 The increasing complexities of microsurgery,laser technology,arthroscopy and who knows what next demand understanding and competence in techniques ...

能不能講解一下計算機專業的優勢?

LIKE 陝西國際商貿學院計算機專業是有中軟國際定製版,定向培養優秀人才,保證成功就業,中軟國際班有計算機科學技術 網際網路技術,計算機資訊管理,大資料應用。專科本科都可以申請,實習期月薪4000以上,轉正後月薪7000以上。 Zarza Ng 自己寫外掛程式算不算 現在遊戲一堆抽卡的,運氣好抽到新...

各位大佬能不能講一下這五種俯臥撐的區別?

石榴 俯臥撐遠不止這幾個做法,大同小異,不同動作通過不同角度把自重按照比例分給需要訓練的部位而已。簡單來說依據胸肌的纖維走向,頭低腳高的偏重上胸,頭高腳低的偏重中部偏下,平地上胸肌中部較多 做上斜時角度越大,實際上的負重越輕,下斜時反之 做時手肘向外開啟一定角度時對胸肌刺激較多,手肘向後緊貼軀幹時對...