VB在程序循环时,出现假死现象,该怎么处理?

VB中用到嵌套循环语句,估计循环时间最短有一秒,在运行到循环语句时,不能操作其他,比如不能点击菜单项等。循环语句中加入了DoEvents,但是效果甚微。请高人帮忙解决一下... VB中用到嵌套循环语句,估计循环时间最短有一秒,在运行到循环语句时,不能操作其他,比如不能点击菜单项等。
循环语句中加入了DoEvents,但是效果甚微。
请高人帮忙解决一下。
展开
 我来答
0871love
2008-07-04 · TA获得超过3518个赞
知道大有可为答主
回答量:1418
采纳率:50%
帮助的人:1612万
展开全部
首先,你应该尝试去改进你的代码,提高程序运行效率
如果确实需要这么长时间,那加入Doevents是一个不错的选择,但同时,你要做好一些工作,比如在运行过程中,不能再对程序进行一些操作(可以用某些控件的enabled属性来控制,进入循环前,设为False,完了,再设置成True)

最后,还想有更好的方法的话,那就是多线程,不过这种方法,要复杂的多了
lxz1969
2008-07-04 · TA获得超过1.1万个赞
知道大有可为答主
回答量:8524
采纳率:33%
帮助的人:1.1亿
展开全部
把DoEvents放在循环的内部,就不会假死了,如果遇到假死,就按ctrl+break,就可以中断程序执行。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
zhq_01
2008-07-04
知道答主
回答量:1
采纳率:0%
帮助的人:0
展开全部
如果你是使用VB.NET或者VB.2005的话,建议你再开个线程,就好很好的解决了。你也可以把代码贴出来看看,让我们看看有什么地方可以优化。
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
wangjie_02
2008-07-04 · 超过54用户采纳过TA的回答
知道答主
回答量:280
采纳率:0%
帮助的人:0
展开全部
介意你寻找规律,简化你的算法,尽量少用嵌套循环语句,否则加以及提示,比如"正在生成中,请耐心等待...."等提示,再加上Doevents在循环语句中
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
Worsley_Barbar
2008-07-04 · TA获得超过313个赞
知道小有建树答主
回答量:382
采纳率:0%
帮助的人:0
展开全部
用了DoEvents不可能“假死”。除非循环中未全部触及DoEvents.或者用了sleep.
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(5)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式