我有大量的小文件需要处理,采用那种并行方案比较好?
多进程
多线程
协程
我的疑惑在于:
Python的GIL的存在是否导致了多线程处理不如多进程处理?在耗时上
Python多进程的最佳进程数比如为4, 那么相同耗时的线程数是不是要比4高?
如果我在C中使用多线程,然后调用Python库,这种情形下有GIL的问题吗?
我有大量的小文件需要处理,采用那种并行方案比较好?
多进程
多线程
协程
我的疑惑在于:
Python的GIL的存在是否导致了多线程处理不如多进程处理?在耗时上
Python多进程的最佳进程数比如为4, 那么相同耗时的线程数是不是要比4高?
如果我在C中使用多线程,然后调用Python库,这种情形下有GIL的问题吗?
写过多线程python处理小文件的程序 大概4w多个html文件
印象里似乎多线程也没有怎么变快,甚至还慢了一点…… 推测下来是小文件的IO瓶颈太大 而不是处理速度
你把这些小文件用BLOB写到一个NOSQL数据库里,然后来处理可能多线程上会有优势
2 回答4.3k 阅读✓ 已解决
2 回答863 阅读✓ 已解决
1 回答4.1k 阅读✓ 已解决
3 回答856 阅读✓ 已解决
2 回答2.2k 阅读✓ 已解决
4 回答2.6k 阅读
3 回答904 阅读✓ 已解决
你的小文件是在同一磁盘上吗?你对每个小文件的「处理」是很快就能完成的操作吗?——如果不是,单线程单进程吧,瓶颈不在那里。
如果不确定,先单线程单进程,看 CPU 能跑满不。