- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
VB下FTP多线程技术的实现
VB下FTP多线程技术的实现 1 引言 Internet的发展非常迅猛,面对Internet这个无穷宝库,人们会经常下载所需要的各种各样的信息,这就要用到文件传输协议FTP(File Transfer Protocol)。FTP是因特网上较早出现的服务功能之一,迄今其仍是Internet上最常用也是最重要的服务功能。面对频繁的文件下载和相对拥挤的网络通路,如何快速、高效、方便地利用FTP获取所需要的信息显得越来越重要。为使系统具有更好的交互性,可以使用近年来出现的多线程机制提高系统的性能。 线程是比进程更小的能完成一个任务的执行流。多线程是指在应用程序中有多个并发的线程在同时运行,这可以加快程序的响应时间,提高计算机资源的使用效率。多线程技术在图形用户界面和网络程序设计中非常有用。VC++支持多线程技术,但VC++程序目前尚不能嵌入流行的ASP网页代码中;Java的多线程技术颇佳,也可以很方便地将其Applet嵌入网络的页面中,但Java毕竟是一门类似于C++的语言,对大多数人来说,熟练掌握并非易事,远没有VB使用起来简单、方便,而且VB的速度同样也很快。VB 6.0在Internet网络编程方面提供了强大功能,本文利用VB 6.0的Addressof操作符配合Windows API函数实现多线程技术,并将其用于Internet上的FTP。 2 VB的FTP实现机制 VB的Internet Transfer控件实际上是一个Activex控件,他支持HTTP和FTP协议。前者用于浏览WWW的HTML页面,后者用于连接FTP服务器进行文件传输。新建一个工程,在窗体上放置Internet Transfer控件itl,另外放置2个文本框ta和tc,分别用来输入FTP站点地址和列出该站点指定目录下的可供下载的文件。 2.1 itl的主要属性和方法 itl.AccessType是与Internet的连接方式。可以设置为1,2,0,分别表示通过电话线、局域网和缺省(按照注册表中的设置)方式与Internet连接;itl.URL是FTP站点的地址;itl.RequestTimeout为连接的时间限制。 OpenURL方法用于同步连接指定的URL并返回该URL中的内容;Execute方法异步执行对远程服务器的请求命令,此方法会触发StateChanged事件;Cancel方法用于强行关闭当前的连接。 2.2 文件传输的实现 文件传输的实现程序如下所示: 程序运行如图1所示。 3 VB的多线程实现机制 3.1 创建线程并初始化 VB通过调用Windows的API函数CreateThread实现多线程,该函数的声明如下: 他返回线程的句柄。为了对线程初始化和管理,需要创建一个类myclass,用myclass的下述函数初始化线程。 ? 3.2 激活线程并管理 用以下2个API函数均可激活线程。 用类myclass的一个属性来管理线程的状态。 3.3 编写处理新线程函数的代码 在函数newFunc中,用forml.show执行前面的实现FTP的程序代码。运行时每当创建一个新线程成功,会弹出一个信息窗口,表明当前的线程号,如图2所示。 4 结 语 网络技术的发展日新月异,在“时间就是金钱、效率就是生命”的信息时代,如何通过Internet快速、高效、安全、方便地获取所需要的信息已成为一个非常重要的技术手段。多线程技术可以使程序反应更快、交互性更强。用VB实现多线程比用VC++和Java均简单得多,而且运行速度毫不逊色,只是目标代码稍大一点(约5%)。文中用Addressof操作符配合Windows API函数实现多线程,并成功运用于FTP远程文件传输。实验表明,该方法安全可靠,简单易行,速度快、开销低,每一个线程大约仅占CPU 20 ms的时间片。随着互连网的普及和网上信息的爆炸式增加,基于VB多线程技术的FTP必然会得到更广泛地应用。
文档评论(0)