Tôi có 96 tệp txt phải được xử lý. Ngay bây giờ tôi đang sử dụng một vòng lặp for và làm cho họ một lúc, quá trình này là rất chậm. 96 tệp kết quả, không cần phải hợp nhất. Có cách nào để làm cho họ chạy song song, ala Parallel.foreach trong C#? đang hiện tại:C# Parallel.Foreach tương đương trong Python
for src_name in glob.glob(source_dir+'/*.txt'):
outfile = open (...)
with open(...) as infile:
for line in infile:
--PROCESS--
for --condition--:
outfile.write(...)
infile.close()
outfile.close()
Muốn quá trình này để chạy song song cho tất cả các file trong source_dir.
là quá trình chụp dài hay đây là việc đọc? –
Trong trường hợp CPython, có khóa GIL (khóa thông dịch toàn cầu), bạn sẽ cần sử dụng mô-đun 'đa xử lý'. Nhưng bạn may mắn vì đã có nhiều thư viện của bên thứ ba được thực hiện trên đầu đa xử lý cho tính toán song song. – Shashank
https://docs.python.org/3/library/multiprocessing.html – Hozikimaru