python多程序資料處理

2021-10-05 15:10:49 字數 845 閱讀 8953

使用python3.4+的import concurrent.futures

def function(json_path):

key_frame_list =

with open(json_path) as fr_json:

data = json.load(fr_json)

video_filename = video_path + data['videoid']

for i in range(len(data['shots'])):

for target in data['shots'][i]['targets']:

if target['category'] == 0:

ch = cv2.waitkey(5)

if ch == 27:

break

except:

pass

cap.release()

然後用多程序呼叫使用的函式。注意多程序的衝突問題,也就是只能多對多或者一對多(如果乙個檔案生成多個檔案,需要在function函式中進行判斷),不能多對一(如果多個檔案同時寫入乙個檔案的話會產生衝突)

最後是函式呼叫,先將需要處理的檔案放到list當中,然後呼叫function函式

with concurrent.futures.processpoolexecutor() as executor:

for image_file,result in zip(json_filename_list,executor.map(function,json_filename_list)):

print("finish one video!!")

python多程序處理大資料

主要用到multiprocessing庫,思想是將大資料讀入記憶體,然後切片儲存,然後多程序分別處理分片。from multiprocessing import pool import math import os 讀取資料 path os.path.join os.getcwd test.txt ...

python多程序處理

最近處理fmri資料時由於採用了的演算法需要隨機成千上萬次,因此所需的計算量相當大,單執行緒處理的話一般要一天,python原生是不支援多執行緒的,因此考慮採用python的多程序。其實編寫python多程序的程式還是比較簡單。下面實在自己的電腦上開啟了4程序。任務管理器裡面cpu顯示已經占用了10...

python多程序 python多程序

當有多個非相關任務需要處理時,並行能大大提高處理速度。這裡簡要介紹python的multiprocessing模組。簡單多程序編寫 當我們任務數量確定而且比較少的時候,可以手動為每個任務指定乙個程序來執行。import multiprocessing as mp def f a print a if...