如果让不同的任务异步执行

minghao5222 2010-09-13 04:42:13
我现有一个小程序,需要几个任务一块执行并且不能相互干扰,用TIMER方式好像不是很好,用多线程在VB下不是多稳定!想请问下,还有什么好的办法可以异步执行吗,比如任务A、B、C等等N多小任务,怎么让他们比如过1分钟触发一次,并且互相不干扰各自运行各自的那!首先声明我的程序任务很多,大概几百个 !不知道是否还有别的实现方式,我想这个问题有需要人都想知道的,请各位高手发表下大家的看法,先谢谢了
...全文
94 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
mokton 2010-10-20
  • 打赏
  • 举报
回复
用VB.Net吧
xiaozhou1121 2010-10-20
  • 打赏
  • 举报
回复
我做过一个GPRS多连接的程序,每天会有一百多个连接连到这个程序上。我是每过来一个连接,就动态分配一个窗体给它(窗体处理此连接的各种数据信息,加了TIMER处理一些事情)。Tcp 连接断开时,销毁窗体。程序运行一、两年了,也没有什么问题。
嗷嗷叫的老马 2010-09-30
  • 打赏
  • 举报
回复
.......关注一下.
熊孩子开学喽 2010-09-30
  • 打赏
  • 举报
回复
这个问题好眼熟,莫非楼主就是上次发的那个用几百的timer的?
如果楼主这N个任务都是互不相同的话,那么在VB中最简单的方法就是分拆成一个个单独的独立程序,然后由一个类似中央主控程序的用户界面来负责通讯和调度. 通讯方式可以多种多样, TCP或者DDE都是比较简单和成熟的方法. 这样作的好处是各个任务相互独立,不会发生死一个崩全部的问题,调试也简单,写一个exe调试一个,相互之间不影响进度. 而且还都是异步执行的, 如果你有个多核CPU就能发现系统会自动调度任务到不同核心上跑.
现在还是人类 2010-09-29
  • 打赏
  • 举报
回复
做任务队列,然后可以 Timer 控件执行对列。
要考虑任务添加、任务删除、任务执行、任务队列排序(还要考虑优先级问题),
最重要的就是无论是添加、删除、执行,都要做过程交换等待,否则会乱的。
射天狼 2010-09-29
  • 打赏
  • 举报
回复
在主exe中,把任务交给单独的另外一个Exe来执行。
minghao5222 2010-09-13
  • 打赏
  • 举报
回复
单独做成EXE不大明白,我用ACTIVEX EXE制作的,那些都没问题!但是几百个任务该如何异步执行那
getemail 2010-09-13
  • 打赏
  • 举报
回复
几百个任务,需要很好得规划一下如何调度。让一台机器完成,是不是有些牵强?
jhone99 2010-09-13
  • 打赏
  • 举报
回复
貌似vb没有真正的多线程

把它们做成单独exe,然后在主程序里调用

1,453

社区成员

发帖
与我相关
我的任务
社区描述
VB 控件
社区管理员
  • 控件
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧