vb.net 不用多线程如何同时运行两个过程?

不知道怎么回事,多线程中如果使用外部dll插件,经常会导致卡死,而我的这两个过程又必须得用别人的插件,不能使用多线程了,还有其他办法能让一个过程开始执行后就让他自己执行,... 不知道怎么回事,多线程中如果使用外部dll插件,经常会导致卡死,而我的这两个过程又必须得用别人的插件,不能使用多线程了,还有其他办法能让一个过程开始执行后就让他自己执行,返回继续执行下一行呢? 展开
 我来答
然后去远足
推荐于2016-02-13 · TA获得超过1万个赞
知道大有可为答主
回答量:4016
采纳率:83%
帮助的人:2415万
展开全部

不用多线程?

 

即使用多线程,也不会是“同时”执行,题主只要略懂一些计算机编译原理就能明白了。

 

不用多线程更不可能让两个过程同步执行了。

 

不过可以提供一个折衷的法子,示例如下:

Sub a()
    '过程一 
End Sub 

Sub b()
    '过程二
End Sub

Sub Timer1_Tick() '简写了,实际在VB.NET里不是这样的
    Timer1.Enabled = False 
    a()
End Sub     

Sub Button1_Click() '同样简写
    Timer1.Enabled = True
    b()
End Sub

 

利用了一个 Timer 控件,实现了这种伪同步(其实还是异步),a()、b() 两个过程相互独立切能并发运行。

 

注意:上述代码需要先把 Timer1 的 Enabled 属性设置为 False,Interval 属性要尽可能小。

反转ing
2013-10-13 · TA获得超过957个赞
知道小有建树答主
回答量:857
采纳率:50%
帮助的人:772万
展开全部
两个线程都加一句
Application.DoEvents() '转让控制权
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式