我用Java编写了一个简单的应用程序,它获取一个路径列表,并生成一个包含原始列表下所有文件路径的文件。
如果paths.txt有:
c:\folder1\
c:\folder2\
...
...
c:\folder1000\
我的应用程序在每个多线程路径上运行递归函数,并返回一个包含这些文件夹下所有文件路径的文件。
现在我想用Python编写这个应用程序。
我编写了一个简单的应用程序,它使用os.walk()
来运行给定的文件夹并打印要输出的文件路径。
现在我想并行运行它,我已经看到Python有一些模块用于此: 多线程和多处理。
最好的办法是什么?在这种方式下,它是如何执行的?
这是python中线程的模式,对我很有用。不过,我不确定线程是否会因为线程在CPython中的工作方式而提高性能。
这里有一个多处理解决方案:
即使是线程也可以非常有助于目录遍历。我使用下面的代码遍历一个SharePoint树,在大约50个线程中获得了相当显著的加速。 这个特定的程序返回目录结构中所有xml文件的(路径、数据)对,并且可以简单地展开以供使用。 (这是从我的程序中剪切粘贴的;需要进行一些额外的编辑。)
相关问题 更多 >
编程相关推荐