2007 年 12 月
      1
2345678
9101112131415
16171819202122
23242526272829
3031   
上一年下一年   上一月下一月

站点统计
日志:516 篇
评论:331 篇
留言:31 篇
收藏夹:0 个书签
会员数:149 人

最新评论
上海地区广告伞太阳伞专业...
没附件了郁闷,还在的话麻...
已经发送到你的邮箱了,请...
写了一个进程间通讯的类....
行啊,二博客都一样
已经发送了附件到你的邮箱...
老马写的..可惜没的附件...
欢迎!
谢谢了。
第一次走进您的博客,^_...


在VB里多线程地执行过程的一种简单方案   [ 2006-01-04 | 作者:马大哈 | 来自:本站原创]

这段时间在为朋友开发一个软件,而本人目前也仅是会一点VB,为这种软件中的"多线程"功能伤透了脑筋.

本来是想使用API,可是那个该死的CreateThread老不好用.....在那个模块里好象根本就不能访问控件,一访问就挂!!!(我觉得是我使用方法不对吧)

没有办法,时间紧,使用以前在网上见过的方法---------ActiveX EXE方式来实现吧.

使用这个方案,就很简单了:

一,建立一个ActiveX EXE工程,在里面添加需要异步执行的代码,并做好接口,并在工程属性里选择"每个对象使用一个线程",编译;

二,建立一个控件工程,引用刚刚生成的ActiveX EXE(不生成好象就无法实现多线程),再做一个接口,并生成控件.

有一点要注意,这个控件尽量做成轻量控件,因为在这种方案里,每个"线程"就是一个控件,一旦线程多了,控件将同等地增加.如果使用轻量控件的话,可以省N多资源.

三,这时才开始界面工程的编写.新建一个EXE工程,添加刚刚生成的控件,设置INDEX为0(就是建立一个数组控件啦).要使用多少个线程就LOAD多少个控件-------这个是很简单的事,就是一个"动态添加控件"的问题.

此时,使用ActiveX EXE辅助实现的多线程程序的框架已经出来了.

经过测试,的确是可以实现多个线程异步地工作(我最多使用200个线程同时工作,效果很不错)

实在是有些受不了了!!!!!!!! 睡觉大作战

暂时没有评论