frostwire设置libtorrent实现顺序下载边下边播

原创 2015年07月06日 17:37:51
首先跟踪代码运行;
main函数调用GULloader函数加载程序的主界面;
为了看下载部分的实现;首先从程序菜单栏添加种子开始跟踪;
com.limegroup.gnutella.gui.actions FileMenuActions 中跟踪添加种子的运行流程
258行 openMagnetOrTorrent函数实现其中选中种子选项
添加种子后;跳转到GUIMediator中的openTorrentFile实现中;
然后跳到BTDownloadMediator中的openTorrentFile中;
  PartialFilesDialog dlg = new PartialFilesDialog(GUIMediator.getAppFrame(), torrentFile);
是选择种子文件列表中待下载的文件选择窗口;当点击OK时,选定待下载文件;
则由BTDownloadMediator中的openTorrentFile中  调用BTEngine.getInstance().download(torrentFile, saveDir, filesSelection);实现顺序下载;
调用BTEngine过程中的跟踪过程如下:
BTEngine中的download函数调用Downloader中的download函数;
当TorrentHandle为空时;会执行 s.asyncAddTorrent(ti, saveDir, priorities, resumeFile);异步添加种子;
事实上通过打印log信息;走到这一步时th确实为空;=所以跟踪到添加种子的程序中;
由于程序采用的是异步进程通信机制;当添加种子完成后;会发出一个alert
通知种子田家完成再执行相应的操作;在BTEngine的 InnerListener中就实现了这种机制。
所以跳到fireDownloadAdded中添加设置顺序下载的属性。

相关文章推荐

Libtorrent 之 NDK 编译

项目要求:实现Android端P2P视频点播软件 方案:Libtorrent + VLC 参考:(1) Tribler-streaming              (2) RuTracker-2....

基础研究--libtorrent库的使用

libtorrent是一个开源bt库,它将meta文件生成,hash生成,下载文件, 网络连接等操作封装成接口,供别人调用,并且都有很好的性能与稳定性。           它大量使用了boost库的...

Rasterbar Libtorrent 的简单分析

  最近在做的一个P2P项目需要使用到一些基础的IO,网络通信的模块,自己写的话短时间内很难达到产品级的健壮性,所以就从现有的开源项目里面抽取模块了,看了看eMule的,这东西和MFC结合紧密,而且整...

frostwire项目源码分析

Frostwire代码分析     Frostwire是一个基于其他许多优秀开源项目开发的一款文件分享软件。它的前身是LimeWire Gnutella客户端;但是已经有了很大的变动。    现在...
  • cllzw
  • cllzw
  • 2015年07月20日 11:30
  • 432

Delphi7高级应用开发随书源码

  • 2003年04月30日 00:00
  • 676KB
  • 下载

iOS开发 简单实现视频音频的边下边播

直接切入主题,要实现的功能是: 1、ios视频音频边缓存边播放,缓存时可以在已下载的部分拖拽进度条。 2、缓存到一半退出,再次播放同一地址的视频时,视频继续下载,并且缓存进度已经走到上一次...
  • wxw55
  • wxw55
  • 2013年12月25日 16:10
  • 28348

MediaPlayer实现音乐文件的边下边播

这边的需求是仅仅是实现一个音乐的边下边播。思路就是截取后台返回的音乐链接。然后截取文件名,判断该文件是否在文件夹下存在。存在就使用sd卡的文件源进行播放,不存在就下载这个音乐文件,并且播放这个音乐链接...
  • z_zT_T
  • z_zT_T
  • 2017年07月08日 15:17
  • 272

简单实现视频音频的边下边播

直接切入主题,要实现的功能是: 1、ios视频音频边缓存边播放,缓存时可以在已下载的部分拖拽进度条。 2、缓存到一半退出,再次播放同一地址的视频时,视频继续下载,并且缓存进度已经走到上一次...
  • mad2man
  • mad2man
  • 2013年09月28日 15:26
  • 5173

IOS边下边播方法的实现

原帖 http://blog.csdn.net/wxw55/article/details/17557295 感谢博主分享。 直接切入主题,要实现的功能是: 1、ios视频音频边缓存边播放,缓存...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:frostwire设置libtorrent实现顺序下载边下边播
举报原因:
原因补充:

(最多只允许输入30个字)