c++如何获得系统空闲时间?

xqz15866 2008-03-20 02:25:32
c++如何获得系统空闲时间?

我想在系统空闲一段时间后执行某种动作,如打开一个指定程序、关机等等!最好有代码说明!
...全文
389 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
野男孩 2008-03-20
  • 打赏
  • 举报
回复
MFC的我记得大概自己有idle事件
bluewanderer 2008-03-20
  • 打赏
  • 举报
回复
GetLastInputInfo好一点 感觉98以后GetIdleTime越来越不正常了
xqz15866 2008-03-20
  • 打赏
  • 举报
回复
GetTickCount()是获取系统启动后的时间间隔。通过进入函数开始定时,到退出函数结束定时,从而可以判断出函数的执行时间。

像屏保程序,它是怎么判断程序是否启动的?它是怎样判断鼠标键盘事件的?
sheenl 2008-03-20
  • 打赏
  • 举报
回复
敲错了 sleep(0).
想想看, gettickcount也没那么精确, 这种方法也判断不了cpu是不是idle了.
sheenl 2008-03-20
  • 打赏
  • 举报
回复
有, GetIdleTime

但是你似乎是想在idle的时候运行自己的某种idle_proccess, 那就需要判断现在是否idle, 好像没有什么好办法.

也许下面这种代码能辅助判断? 我感觉想精确判断cpu是否为idle似乎没有什么好办法. 至少我不会.

BOOL IsIdle()
{
DWORD t = GetTickCount();
Sleep();
t = GetTickCount() - t;

return t == 0;
}

xqz15866 2008-03-20
  • 打赏
  • 举报
回复
再问一下,WIN32下有没有获得系统空闲时间的API?
sheenl 2008-03-20
  • 打赏
  • 举报
回复
我不会, 帮你顶顶.
Supper_Jerry 2008-03-20
  • 打赏
  • 举报
回复
http://topic.csdn.net/t/20040825/13/3308026.html
ouyh12345 2008-03-20
  • 打赏
  • 举报
回复
http://topic.csdn.net/t/20040825/14/3308219.html
  • 打赏
  • 举报
回复

64,186

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧