CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
不看会后悔的Windows XP之经验谈 简单快捷DIY实用家庭影院
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  专题开发/技术/项目 >  游戏开发

Windows程序的CPU占用率如何准确地控制?

楼主chinagdh(编程爱好)2005-01-27 14:56:47 在 专题开发/技术/项目 / 游戏开发 提问

现有模式只能写成这样  
  :下面的Sleep(16)   是用来让程序不占用100%   ,   有更准确的方法吗?  
   
          //   Main   message   loop:  
          for(;;)  
          {  
                  if(   TRUE   ==   PeekMessage(   &msg,   NULL,   0U,   0U,   PM_NOREMOVE   )   )  
                  {  
                          if(   !GetMessage(   &msg,   NULL,   0,   0   )   )  
                                  break;  
   
                          if   (!TranslateAccelerator(msg.hwnd,   hAccelTable,   &msg))    
                          {  
                                  TranslateMessage(&msg);  
                                  DispatchMessage(&msg);  
                          }  
                  }  
                  else  
                  {  
                          theGame->Proecess();  
                          if(   timeGetTime()   -   dwStartTime   >=   33   )  
                          {  
                                  theGame->Render();  
                                  RECT   rcWind;  
                                  GetClientRect(   g_hWnd,   &rcWind   );  
                                  RedrawWindow(   g_hWnd,   &rcWind,   NULL,   RDW_INVALIDATE   );  
                                  dwStartTime   =   timeGetTime();  
                          }  
                          Sleep(16);  
                  }  
          } 问题点数:100、回复次数:6Top

1 楼coolstarhty(语言多了,编程不好学啊)回复于 2005-01-27 15:08:27 得分 5

据我所知道,好像是不行的,因为CPU执行指令带有一定的随机性。  
   
  对系统底层了解不多,帮你顶!Top

2 楼Drong([伤口])回复于 2005-01-27 17:34:24 得分 10

有函数可以获取CPU使用率啊,当超过指定值时就SLEEP,呵呵Top

3 楼chijingde(AD)回复于 2005-01-27 17:36:50 得分 1

占用率……  
   
  不知道  
   
  关注一下Top

4 楼mydo(侯佩|hopy|ks)回复于 2005-01-27 19:36:17 得分 50

看一下   Win32   核心编程Top

5 楼oyljerry(【勇敢的心】→ ㊣提拉米苏√㊣)回复于 2005-01-27 21:35:27 得分 12

对于这种死循环,最好开个线程来执行,同时适当的Sleep来释放CPU,都可以降低CPU占用率Top

6 楼oyljerry(【勇敢的心】→ ㊣提拉米苏√㊣)回复于 2005-01-27 21:36:24 得分 22

可以用PDH(Performance   Data   Helper)系列函数来获得CPU利用率Top

相关问题

  • 占用CPU问题
  • CPU占用率100%
  • 急问,CPU占用99%!
  • 求助,CPU占用问题.
  • CPU占用率求助?
  • Oracle 占用很多CPU
  • Oracle 占用很多CPU
  • Office2003占用CPU问题?
  • 进程占用CPU资源
  • 请问如何在windows下获得CPU占用率和当前进程数?

关键词

  • cpu
  • null
  • 占用
  • rcwind
  • msg
  • hwnd

得分解答快速导航

  • 帖主:chinagdh
  • coolstarhty
  • Drong
  • chijingde
  • mydo
  • oyljerry
  • oyljerry

相关链接

  • CSDN Blog
  • 技术文档
  • 代码下载
  • 第二书店
  • 读书频道

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo