Open Source
文章平均质量分 79
zougangx
软件开发 Enough space... Enough performance...
QQ:283407231
MSN:[email protected]
展开
-
eMule源代码分析(三)
搜索信息集-CSearchListCSearchList 是emule中的搜索列表,掌管emule中所有的搜索请求。CSearchFile是这个列表中的元素,代表了一次搜索的相关信息。它们的关系和之前描述的已知文件和已知文件列表有一些类似的地方。CSearchList的主要任务就是对其一个叫做list的类型为CSearchFile列表的内部变量进行维护,提供很方便得往这个列表中添加,转载 2008-10-20 16:35:00 · 1243 阅读 · 0 评论 -
eMule源代码分析(四)
emule中的信誉机制信誉机制在P2P系统中有非常重要的作用。为了使用户更加愿意共享自己的资源,需要有一些机制能够让对整个P2P系统贡献更大的用户有更多的激励。在 emule中,激励机制的设计方案是tit-for-tat这种最直观的方案。这种方案的意义就是最简单的如果别人对你好,那么你也对别人好。下面看实际的实现。CClientCreditsList和CClientCredits类负转载 2008-10-20 16:36:00 · 990 阅读 · 0 评论 -
eMule源代码分析(二)
eMule源代码解析 -2 2006-10-16 17:41分块机制--正确传输资源的保证 为了加快内容分发的速度,分块处理是一种简单有效的方法。emule中对每个文件都进行了分块处理。另外分块还有一个好处就是如果保留了每一分块的hash值,就能在只下载到文件的一部分时判断出下载内容的有效性。emule在获取每个共享文件的信息时,就对它进行了分块处理,因此如果要知道emule中的分块转载 2008-10-20 16:35:00 · 1220 阅读 · 0 评论 -
eMule源代码分析(五)
emule中的Kademlia代码总体描述当 emule中开始使用Kademlia网络后,便不再会有中心服务器失效这样的问题了,因为在这个网络中,没有中心服务器,或者说,所有的用户都是服务器,所有的用户也是客户端,从而完完全全得实现了P2P。接下来讲针对emule中的Kademlia网络进行分析,会有一节进行原理方面的分析。另外的几节将会根据emule中实现Kademlia所使用的不转载 2008-10-20 16:38:00 · 1089 阅读 · 1 评论 -
eMule源代码分析(一)
转自中国源码网eMule的官方首页上写着:2002年05月13日 一个叫做 Merkur 的人,他不满意原始eDonkey2000客户端并且坚信他能够做的更好,所以他开始制作。他聚集了其它开发人员在他的周围,并且eMule工程就此诞生。eMule是一个典型的MFC程序,它的图形界面等,已经和MFC紧紧融合到了一起。因此通常情况下它只能在windows平台下运行。有一些其它的工程,如aMu转载 2008-10-20 16:33:00 · 1975 阅读 · 0 评论 -
Ogre是如何实现低耦合的类间消息传递机制的?
关于低耦合的消息传递,实现的方式有很多,哪种方法更好与具体的使用环境有关,本文使用试错的方法,逐步探索达成这一目的具体方式,并理解实现方式背后的原因。 面向对象的系统当中,不可避免的有大量的类间消息传递的需求:一个类需要通知另一个或几个类做些什么。 这种类间消息传递,简单的说,就是调用其他类的方法。如下:void A::OnMessageXX(){转载 2009-07-30 23:55:00 · 806 阅读 · 0 评论 -
小议Singleton模式——关于单件对象初始化的探讨
凡是使用C++进行开发的人,大都或是了解,或是直接使用过Singleton模式,但是Singleton的多种实现方式有什么差异?不同的实现细节背后究竟蕴含着什么意义?本文试图列举常见的几种不同的Singleton实现方式,考察这些不同的实现方式中的细节差异,并剖析其好处与缺点,试图对Singleton的实现方式做一个小结。 我们在使用C++编写实际项目的时候,往往会有对全局对象/变量的转载 2009-07-30 23:57:00 · 944 阅读 · 0 评论 -
如何编译Chrome
源码之前了无秘密 - 侯捷的《STL源码分析》他这里的源码主要是指阅读源码,基于这个定义,个人将这句话稍作修改:“源码 + 调试”之前了无秘密。抱着研究的态度,今天用VC++ 2008编译了Chrome的源码(现在机器上的VC++版本只剩2008了),现将编译流程描述如下:1. 用TortoiseSVN下载最新的Chrome源码,假设下载到了目录“G:/Chrome/src/”下,以后的目转载 2009-08-14 21:56:00 · 866 阅读 · 0 评论 -
VC++ & MFC实现的优秀的开源项目
List of Best Open Souce projects written in VC++/MFC7-Zip (http://sourceforge.net/projects/sevenzip/) : 7-Zip is a file archiver with the high compression ratio. The program supports 7z, ZIP, CA转载 2009-08-14 22:10:00 · 886 阅读 · 1 评论