您的批评和鼓励都是我把编程无限办好的动力! 您编程时遇到困难,或遇到不顺心的事想发发牢骚尽管到这里来吧! 虽然本网力求全面,但也不能包罗万象,这些我筛选出的优秀网站连接就是对本站最好的补充! 学习编程当然也离不开书本了,这里收集大量编程书籍! 编程无限之源码超市,这里收集的代码令你意想不到的全面! 欢迎光临编程网校,这里专门收集VB/CB入门文章及技术文章! 欢迎光临编程无限!
     
       
 
当前位置:英文资料 >> API
Improved DoEvents For NT Users
  资料类型: API 上传时间: 2001-02-21 阅读次数: 2564



DoEvents was great to keep a tight process from hogging the system, but in NT 4.0 if you check you'll find your cpu usage going to 100 percent quick.

Try adding a line with Sleep 1 after DoEvents to your tight loops, this will only cost you 1 ms and if you just call the sleep command every 150 or 200 passes, it doesn't cost you much. On my PC the procedure below shows 1% or less change to my cpu usage. If you Rem out the sleep line cpu usage hits 100% quick.

Declare

Private Declare Sub Sleep Lib "Kernel32" (ByVal dwmilliseconds As Long)

Sample Code

Private Sub Command1_Click()

Dim iCounter As Integer

Do

'Your Process

For iCounter = 1 To 10000

DoEvents

' 200 seems like a good value to ensure

' min. slow down with min. load on cpu usage

' according to NT 40's Task Manager

' the next line will cost you t ms for every

' 200 passes

If iCounter Mod 200 = 0 Then

Sleep 1

End If

Next

Loop

End Sub


推荐给朋友 点 评( 0 ) 返回前页 关闭此页
   
  本类最热文章排名:
  1.keybd_event
2.How To Get The Machine Name
3.Restart or Exit Windows
4.How To Get The Current Users Name
5.WindowFromPoint
6.SendMessage
7.Startmenu shortcut
8.SelectObject Function
9.Start Notepad From An Application
10.RemoveMenu
   
   
  评论:
 
 
 

 

关于本站 版权声明 联系方法
编程无限 V4.1 Copyright © 1999-2008 21code.com

京ICP备05006938号