有没有什么办法可以让程序不要运行太快?我在VB编程序时,在一些比较大的运算时,比如从文本文件导入几百行数据写入数据库中。一旦开始运行,系统好像把全部的资源都用于处理它去了,程序的界面就像死机一样(有些按钮都显示不出来,用于显示状态的label控件都没法显示内容)。我看很多软件在这种情况下都运行的很自然,不象我这样象死机。我宁可它慢点处理,有什么办法吗?

解决方案 »

  1.   

    '你的数据库操作循环
    do while ###
        ......你的数据库操作
        doevents   '加上这一句,转移控制权就好了
    loop
      

  2.   

    用doevents,在一大型运算前端加一Doevents,就可以了
      

  3.   

    DoEvents
    我还以为是问sleep呢……
      

  4.   

    DoEvents 会将控制权传给操作系统。当操作系统处理完队列中的事件,并且在 SendKeys 队列中的所有键也都已送出之后,返回控制权。DoEvents 对于简化诸如允许用户取消一个已启动的过程 — 例如搜寻一个文件 — 特别有用。对于长时间过程,放弃控制权最好使用定时器或通过委派任务给 ActiveX EXE 部件来完成。以后,任务还是完全独立于应用程序,多任务及时间片由操作系统来处理。小心 确保以 DoEvents 放弃控制权的过程,在第一次 DoEvents 返回之前,不能再次被其他部分的代码调用;否则会产生不可预料的结果。此外,如果其它的应用程序可能会和本过程以不可预知的方式进行交互操作,那么也不要使用 DoEvents,因为此时不能放弃控制权。
      

  5.   

    DoEvents的本质是执行自身线程积压的消息