我有一个Python脚本,可以递归遍历指定目录,并对找到的每个文件进行校验和。然后它会写入一个日志文件,列出所有文件路径及其MD5校验和。
顺序执行这个脚本需要很长时间,对于每个15MB的50,000个文件而言。然而,我的计算机可用资源比实际使用的资源要多得多。我应该如何调整我的方法,使脚本使用更多资源以更快地执行?
例如,我可以将文件列表分为三部分并为每部分运行一个线程,从而使运行时间缩短3倍吗?
我不太熟悉线程,希望有人能为我的情况提供一个示例。
以下是我顺序执行MD5循环的代码:
顺序执行这个脚本需要很长时间,对于每个15MB的50,000个文件而言。然而,我的计算机可用资源比实际使用的资源要多得多。我应该如何调整我的方法,使脚本使用更多资源以更快地执行?
例如,我可以将文件列表分为三部分并为每部分运行一个线程,从而使运行时间缩短3倍吗?
我不太熟悉线程,希望有人能为我的情况提供一个示例。
以下是我顺序执行MD5循环的代码:
for (root, dirs, files) in os.walk(root_path):
for filename in files:
file_path = root + "/" + filename
md5_pairs.append([file_path, md5file(file_path, 128)])
Thanks for your help in advance!