文件名称:NBt
- 所属分类:
- P2P编程
- 资源属性:
- [Windows] [Visual.Net] [源码]
- 上传时间:
- 2012-11-26
- 文件大小:
- 11.21mb
- 下载次数:
- 0次
- 提 供 者:
- a***
- 相关连接:
- 无
- 下载说明:
- 别用迅雷下载,失败请重下,重下不扣分!
介绍说明--下载内容均来自于网络,请自行研究使用
NBT:.net 下的BT下载库 内存优化:
◆ KeepAliveMessage, ChokeMessage, UnChokeMessage, InterestingMessage, NotInterestingMessage可以修改成单实例,这样可以节省一些对象分配。不过要解决MessageFactory.Parse()方法需要的,从byte[]中创建Message对象的问题。同样,对于一些没有状态的Task,也可以不用每次创建。
◆ ReceiveBuffer看看能不能用B+或者B-树的方式进行优化,提高检索速度和内存效率。
◆ 当Peer出现错误时,创建一个专门负责将Peer从PeerCollection中移出和重新分配下载等的Task,这样对PeerCollection的修改都移动到TaskQueue中,这样就可以不对PeerCollection进行锁定。这样做的前提是必须实现choke算法,避免其他Task再次将这个已经关闭了的Task调度进来。-err
◆ KeepAliveMessage, ChokeMessage, UnChokeMessage, InterestingMessage, NotInterestingMessage可以修改成单实例,这样可以节省一些对象分配。不过要解决MessageFactory.Parse()方法需要的,从byte[]中创建Message对象的问题。同样,对于一些没有状态的Task,也可以不用每次创建。
◆ ReceiveBuffer看看能不能用B+或者B-树的方式进行优化,提高检索速度和内存效率。
◆ 当Peer出现错误时,创建一个专门负责将Peer从PeerCollection中移出和重新分配下载等的Task,这样对PeerCollection的修改都移动到TaskQueue中,这样就可以不对PeerCollection进行锁定。这样做的前提是必须实现choke算法,避免其他Task再次将这个已经关闭了的Task调度进来。-err
(系统自动生成,下载前可以参看下载内容)
下载文件列表
NBt
...\mssccprj.scc
...\NBT.Console
...\...........\AssemblyInfo.cs
...\...........\Class1.cs
...\...........\ConsoleWriter.cs
...\...........\mssccprj.scc
...\...........\NBT.Console.csproj
...\...........\NBT.Console.csproj.user
...\...........\NBT.Console.csproj.vspscc
...\...........\vssver.scc
...\...........\WinConsole.cs
...\NBT.Core
...\........\AssemblyInfo.cs
...\........\Average.cs
...\........\BDecoding.cs
...\........\BEncoding.cs
...\........\DownloadContext.cs
...\........\Downloader.cs
...\........\DownloadObject.cs
...\........\Forks.Utils
...\........\...........\Converts.cs
...\........\...........\MathUtil.cs
...\........\...........\stringUtil.cs
...\........\...........\vssver.scc
...\........\IntEndianConverter.cs
...\........\IStopable.cs
...\........\Messages
...\........\........\BeginLengthMessage.cs
...\........\........\BitField.cs
...\........\........\BitfieldMessage.cs
...\........\........\CancelMessage.cs
...\........\........\ChokeMessage.cs
...\........\........\HandshakeMessage.cs
...\........\........\HaveMessage.cs
...\........\........\HaveTask.cs
...\........\........\IMessageIOServer.cs
...\........\........\InterestedMessage.cs
...\........\........\KeepaliveMessage.cs
...\........\........\Message.cs
...\........\........\MessageFactory.cs
...\........\........\MessageReceived.cs
...\........\........\MessageReceiver.cs
...\........\........\NotInterestedMessage.cs
...\........\........\OutputMessageQueue.cs
...\........\........\PieceMessage.cs
...\........\........\RequestMessage.cs
...\........\........\SimpleMessage.cs
...\........\........\SocketMessageIOServer.cs
...\........\........\TransferErrorEvent.cs
...\........\........\TypedMessage.cs
...\........\........\UnchokeMessage.cs
...\........\........\vssver.scc
...\........\MetaInfo.cs
...\........\mssccprj.scc
...\........\NBT.Core.csproj
...\........\NBT.Core.csproj.user
...\........\NBT.Core.csproj.vspscc
...\........\NBT.Core.mdx
...\........\NBT.Core.wdx
...\........\NetworkBuffer.cs
...\........\Peers
...\........\.....\Peer.cs
...\........\.....\PeerCollection.cs
...\........\.....\PeerListener.cs
...\........\.....\PeerRec.cs
...\........\.....\PeerRecCollection.cs
...\........\.....\SHA1Comparer.cs
...\........\.....\SHA1HashProvider.cs
...\........\.....\vssver.scc
...\........\Reportings
...\........\..........\DownloadStatEvent.cs
...\........\..........\PeerReportRec.cs
...\........\..........\PeerReportStatEvent.cs
...\........\..........\ProgressEvent.cs
...\........\..........\vssver.scc
...\........\Storages
...\........\........\FileBitmap.cs
...\........\........\Piece.cs
...\........\........\Storage.cs
...\........\........\vssver.scc
...\........\Tasks
...\........\.....\AddPeerTask.cs
...\........\.....\BroadcastMsgTask.cs
...\........\.....\ChokeTask.cs
...\........\.....\ChokingAlgorithmTask.cs
...\........\.....\DispatchDownloadTask.cs
...\........\.....\EmptyTask.cs
...\........\.....\HandShakeTask.cs
...\........\.....\ITaskQueue.cs
...\........\.....\KeepAliveTask.cs
...\........\.....\NormalTaskFactory.cs
...\........\.....\OnBitfieldTask.cs
...\........\.....\OnChokeTask.cs
...\........\.....\OnHaveTask.cs
...\........\.....\OnInterestingTask.cs
...\........\.....\OnKeepAliveTask.cs
...\........\.....\OnMessageTask.cs
...\........\.....\OnNotInterestingTask.cs
...\mssccprj.scc
...\NBT.Console
...\...........\AssemblyInfo.cs
...\...........\Class1.cs
...\...........\ConsoleWriter.cs
...\...........\mssccprj.scc
...\...........\NBT.Console.csproj
...\...........\NBT.Console.csproj.user
...\...........\NBT.Console.csproj.vspscc
...\...........\vssver.scc
...\...........\WinConsole.cs
...\NBT.Core
...\........\AssemblyInfo.cs
...\........\Average.cs
...\........\BDecoding.cs
...\........\BEncoding.cs
...\........\DownloadContext.cs
...\........\Downloader.cs
...\........\DownloadObject.cs
...\........\Forks.Utils
...\........\...........\Converts.cs
...\........\...........\MathUtil.cs
...\........\...........\stringUtil.cs
...\........\...........\vssver.scc
...\........\IntEndianConverter.cs
...\........\IStopable.cs
...\........\Messages
...\........\........\BeginLengthMessage.cs
...\........\........\BitField.cs
...\........\........\BitfieldMessage.cs
...\........\........\CancelMessage.cs
...\........\........\ChokeMessage.cs
...\........\........\HandshakeMessage.cs
...\........\........\HaveMessage.cs
...\........\........\HaveTask.cs
...\........\........\IMessageIOServer.cs
...\........\........\InterestedMessage.cs
...\........\........\KeepaliveMessage.cs
...\........\........\Message.cs
...\........\........\MessageFactory.cs
...\........\........\MessageReceived.cs
...\........\........\MessageReceiver.cs
...\........\........\NotInterestedMessage.cs
...\........\........\OutputMessageQueue.cs
...\........\........\PieceMessage.cs
...\........\........\RequestMessage.cs
...\........\........\SimpleMessage.cs
...\........\........\SocketMessageIOServer.cs
...\........\........\TransferErrorEvent.cs
...\........\........\TypedMessage.cs
...\........\........\UnchokeMessage.cs
...\........\........\vssver.scc
...\........\MetaInfo.cs
...\........\mssccprj.scc
...\........\NBT.Core.csproj
...\........\NBT.Core.csproj.user
...\........\NBT.Core.csproj.vspscc
...\........\NBT.Core.mdx
...\........\NBT.Core.wdx
...\........\NetworkBuffer.cs
...\........\Peers
...\........\.....\Peer.cs
...\........\.....\PeerCollection.cs
...\........\.....\PeerListener.cs
...\........\.....\PeerRec.cs
...\........\.....\PeerRecCollection.cs
...\........\.....\SHA1Comparer.cs
...\........\.....\SHA1HashProvider.cs
...\........\.....\vssver.scc
...\........\Reportings
...\........\..........\DownloadStatEvent.cs
...\........\..........\PeerReportRec.cs
...\........\..........\PeerReportStatEvent.cs
...\........\..........\ProgressEvent.cs
...\........\..........\vssver.scc
...\........\Storages
...\........\........\FileBitmap.cs
...\........\........\Piece.cs
...\........\........\Storage.cs
...\........\........\vssver.scc
...\........\Tasks
...\........\.....\AddPeerTask.cs
...\........\.....\BroadcastMsgTask.cs
...\........\.....\ChokeTask.cs
...\........\.....\ChokingAlgorithmTask.cs
...\........\.....\DispatchDownloadTask.cs
...\........\.....\EmptyTask.cs
...\........\.....\HandShakeTask.cs
...\........\.....\ITaskQueue.cs
...\........\.....\KeepAliveTask.cs
...\........\.....\NormalTaskFactory.cs
...\........\.....\OnBitfieldTask.cs
...\........\.....\OnChokeTask.cs
...\........\.....\OnHaveTask.cs
...\........\.....\OnInterestingTask.cs
...\........\.....\OnKeepAliveTask.cs
...\........\.....\OnMessageTask.cs
...\........\.....\OnNotInterestingTask.cs