Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我正在使用多线程来加快从 Web 下载一堆文件的过程。
我如何确定应该使用多少线程来最大化或接近最大化总下载吞吐量?
PS:
我正在使用自己的笔记本电脑,带宽为 1Mb。
我要的数据是coursera.com的网页源代码
如果您想加快从网络下载文件的速度,除了线程数之外,还有更多因素。实际上我不相信你会实现这一点,因为你没有描述一些限制(比如服务器端每个连接的最大带宽,你有多链接客户端,你可以使用不同的链接下载不同的数据,你想从不同的服务器下载不同的部分,或类似的)。
在通常情况下,有多个线程来下载某些东西会减慢进程。您将需要维护几个连接并以某种方式同步数据(期望您是否会同时下载例如不同的文件)。
我想说,在“普通”条件下,更大的限制是您的带宽限制,因此使用更多线程不会使下载速度更快。在这种情况下,您将与许多连接共享您的整个带宽。