论文部分内容阅读
众所周知,软件危机极大地阻碍了软件工业的发展。在这种情况下,组件技术的出现为软件开发带来了新的思路,并越来越受到软件开发人员的重视。基于组件的软件开发方法具有一次编写,随处执行,随处重用的优点,大大缩短了软件的开发周期。但目前大多数组件是以COM和ActiveX技术来开发,这种开发方法技术复杂度高,难以维护和调试,在使用时也需要在注册表注册。诸多难点使得组件的稳定性、可复用性和执行性能大打折扣。而今,在.NET平台下,组件的开发变得简单快捷,可调试性强,开发完成后只需要复制即可使用,无需再在注册表中注册。这种组件开发的方式大大简化了以前的开发方法,使得组件的可复用性显著增强。作为后端组件的多线程组件,其稳定性和性能非常重要,它通常是由每秒事务处理数TPS和并发用户数来评估的。同时多线程组件会频繁地在多线程模式下运行,线程控制的细节是多线程组件质量优劣的重中之重。因此将组件技术和多线程技术有机地融为一体,是提高多线程组件在多线程模式下运行速度的关键所在。本文以.NET为开发平台,从组件技术和多线程技术两方面出发,分析组件技术和多线程技术的优势和特点,结合具体FTP客户端实例,引入线程池技术,设计出FTP客户端多线程组件,并针对以往的FTP的性能进行了比较。该功能模块将组件技术和多线程技术有机地融为一体,结构新颖,既具有组件技术的特点,又突出多线程技术的运行效率。本文所作的主要工作包括:(1)研究了.NET平台下的组件技术,对.NET平台下组件的特点和设计模式进行了深入的研究。(2)研究了.NET平台下的多线程技术,对比以往开发平台的多线程技术,着重指出.NET平台对于多线程技术的支持以及对线程同步的新解决方法。(3)对多线程的同步问题提出了多种解决方案,同时采用.NET内置线程池类(ThreadPool)实现对多线程的优化处理。(4)在.NET框架下,抛弃以前开发组件的COM和ActiveX复杂技术,以强大的类库和简单统一的组件模型轻松地开发组件。利用.NET framework跨语言的兼容性,使所开发的多线程组件能够最大程度地被复用。(5)采用C#语言,开发了FTP客户端多线程组件,应用于档案归档系统中的档案归档模块。