找回密码
 注册
楼主: sysnotdown

MultiGet提问贴

[复制链接]
发表于 2006-9-28 21:04:19 | 显示全部楼层
有没有更好的,实现起来也简单的算法?
回复

使用道具 举报

 楼主| 发表于 2006-9-28 21:39:11 | 显示全部楼层
这个算法不简单,我还没想成熟。
回复

使用道具 举报

发表于 2006-9-28 23:41:15 | 显示全部楼层
0.0.3:改善成另一个更好的算法:
假定线程a最快,线程e最慢。当a下完后,就将e的任务分一半(前一半或后一半都行)给a
如此反复进行下载。
回复

使用道具 举报

 楼主| 发表于 2006-9-29 08:37:32 | 显示全部楼层
这样很好,就是动态分配了
回复

使用道具 举报

发表于 2006-9-29 10:28:44 | 显示全部楼层
希望易用性和Flashget一样方便就行了,功能可以慢慢改善。其实linux下的软件不是功能不强,而是做得没有Windows下的那么易用,所以linux给人的感觉不那么友好。难用的软件会吓跑很多普通用户的~~~~~~~
回复

使用道具 举报

 楼主| 发表于 2006-9-29 10:44:10 | 显示全部楼层
[quote:0b2e04d9f4="linuxpgy"]希望易用性和Flashget一样方便就行了,功能可以慢慢改善。其实linux下的软件不是功能不强,而是做得没有Windows下的那么易用,所以linux给人的感觉不那么友好。难用的软件会吓跑很多普通用户的~~~~~~~ [/quote]

就是,易用性在Linux下做起来更比win难,如果有VC一样方便的开发环境,Linux的程序不至于这样难用。
回复

使用道具 举报

 楼主| 发表于 2006-9-29 17:47:05 | 显示全部楼层
[quote:715eff8559="dyte200"]有没有更好的,实现起来也简单的算法?[/quote]

简单地想了想,是不是可以这么做?

1。过滤可用地址。检查各个地址的文件长度,以主地址文件长度为准,去掉文件长度不符的地址,如果主地址取不到长度,不采用镜像地址,如果主地址能取到长度镜像地址取不到的不用。

2。在m个可用地址上启动n个线程,如果m>n,选前n个地址先用,否则轮流使用m个地址。

3。如果是n>=m,我们可以计算每个地址每线程产生的流量,以此做标准,可以在每个任务片结束后换最快的服务器下载,最快的服务器线程满就换次快的。

4。如果是n<m,则每个任务片结束后都尝试还没有用到的服务器,直到所有的服务器都能够被尝试并记录到速度。

5。为保证优化使用各地址,任务片的大小做一个限制,比如4M,否则可能好的服务器可能不会被发现。
回复

使用道具 举报

发表于 2006-9-30 13:30:00 | 显示全部楼层
请问multiGet是怎样在server端对文件进行seek操作的?
回复

使用道具 举报

发表于 2006-9-30 14:20:32 | 显示全部楼层
请问multiGet的动态分配任务的算法?
回复

使用道具 举报

 楼主| 发表于 2006-9-30 15:51:35 | 显示全部楼层
你的问题都在代码里,我就简单说两句,任务分配是不指定结尾的,是否结束任务片由管理器负责。
seek位置是可以指定的,相关协议里有。
如果你用libcurl倒没有必要关心这个,它里面应该都做掉了。
回复

使用道具 举报

发表于 2006-10-4 12:13:57 | 显示全部楼层
呵呵,纯粹鼓励!
回复

使用道具 举报

发表于 2006-10-7 16:13:02 | 显示全部楼层

在新建任务时,设置“保存到”项目时会发生错误

在新建任务时,设置“保存到”项目时会发生错误,希望能引起你的注意。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×
回复

使用道具 举报

 楼主| 发表于 2006-10-7 19:36:39 | 显示全部楼层
从来没有观察到这个问题,我的代码里不会跳这个窗口,应该是wxWidgets内部的问题。我这里设置路径到/etc/...没有问题。你可以在你用的wxWidgets版本上重新编译一下看看。
回复

使用道具 举报

发表于 2006-10-8 14:43:25 | 显示全部楼层
我不是专业人士,编程的方面无话可说。作为一个用户说几个小建议吧:
1,主窗口打开的时候,鼠标旋停在工具条上任何一个按钮时,提示的文字都是“help”。
2,程序运行的时候,在面板上有图标,另外还有一个浮动窗口。但是那个浮动窗口好像没有任何作用。建议把他去掉吧。有一个面板上的图标就够了。
3,把图标做得更漂亮些吧。

谢谢!
回复

使用道具 举报

发表于 2006-10-8 14:59:05 | 显示全部楼层
怎么在命令行下调用啊 MultiGet [url]?
我想在flashgot里面新建一项调用它,该怎么弄?
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

GMT+8, 2025-5-19 00:55 , Processed in 0.027457 second(s), 13 queries .

© 2001-2025 Discuz! Team. Powered by Discuz! X3.5.

快速回复 返回顶部 返回列表