blackperl
驱动牛犊
驱动牛犊
  • 注册日期2004-09-16
  • 最后登录2005-04-19
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
阅读:3406回复:4

内核定时器的一点问题(100分)

楼主#
更多 发布于:2004-12-17 19:30
我使用内核的定时器
KeSetTimerEx(
    IN PKTIMER  Timer,
    IN LARGE_INTEGER  DueTime,
    IN LONG  Period  OPTIONAL,
    IN PKDPC  Dpc  OPTIONAL
    );
其中DueTime, Period  两个参数各指的是什么意思??
AllenZh
驱动老牛
驱动老牛
  • 注册日期2001-08-19
  • 最后登录2015-11-27
  • 粉丝19
  • 关注10
  • 积分1316分
  • 威望2387点
  • 贡献值7点
  • 好评度321点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2004-12-17 20:21
我使用内核的定时器
KeSetTimerEx(
    IN PKTIMER  Timer,
    IN LARGE_INTEGER  DueTime,
    IN LONG  Period  OPTIONAL,
    IN PKDPC  Dpc  OPTIONAL
    );
其中DueTime, Period  两个参数各指的是什么意思??
 


DueTime
Specifies the absolute or relative time at which the timer is to expire. If the value of the DueTime parameter is negative, the expiration time is relative to the current system time. Otherwise, the expiration time is absolute. The expiration time is expressed in system time units (100-nanosecond intervals). Absolute expiration times track any changes in the system time; relative expiration times are not affected by system time changes.
Period
Specifies an optional period for the timer in milliseconds. Must be less than or equal to MAXLONG
1,承接Windows下驱动/应用开发 2,本人原创虚拟鼠标/键盘,触摸屏,虚拟显卡,Mirror驱动,XP无盘的SCSI虚拟磁盘驱动等 3,windows下有尝技术服务(包括BUG调试,员工培训等) 欢迎深圳和海外企业联系.msn:mfczmh@sina.com
snowStart
驱动老牛
驱动老牛
  • 注册日期2004-04-06
  • 最后登录2011-06-02
  • 粉丝0
  • 关注0
  • 积分95分
  • 威望19点
  • 贡献值177点
  • 好评度1点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2004-12-17 21:46
MSDN或DDK说得很清楚
如楼上所贴
学习,关注,交流中... [email=fengyu@163.com]Email:snowstarth@163.com[/email] [url]http://bbs.zndev.com/?a=snowStart[/url]
snowStart
驱动老牛
驱动老牛
  • 注册日期2004-04-06
  • 最后登录2011-06-02
  • 粉丝0
  • 关注0
  • 积分95分
  • 威望19点
  • 贡献值177点
  • 好评度1点
  • 原创分0分
  • 专家分0分
地板#
发布于:2004-12-17 21:48
多查一查MSDN或DDK的说明
很多都是在那里呢
学习,关注,交流中... [email=fengyu@163.com]Email:snowstarth@163.com[/email] [url]http://bbs.zndev.com/?a=snowStart[/url]
mptchenx
驱动牛犊
驱动牛犊
  • 注册日期2004-07-03
  • 最后登录2010-01-06
  • 粉丝0
  • 关注0
  • 积分18分
  • 威望2点
  • 贡献值0点
  • 好评度1点
  • 原创分0分
  • 专家分0分
地下室#
发布于:2004-12-18 03:57
duetime:
     用来计算定时器变成signaled的时间t....如果是负数  duetime指的就是相对时间...定时器将在 (当前时间-duetime) 时刻signaled  如果是正的,duetime指的就是绝对时间 定时器将在duetime时刻 signaled! DDK没有显式指出如果duetime是正数,但是已经是过去某一时刻的情况,事实上这时候定时器马上singaled.....
Period:
     如果要周期性触发这个timer...传递一个间隔时间...//
如果传递0 该调用同 KeSetTimer
反汇编KeSetTimer  你会发现这函数会调用KeSetTimerEx
KeSetTimer (
     PKTIMER Timer,
     LARGE_INTEGER DueTime,
     PKDPC Dpc OPTIONAL
    )
{
    return KeSetTimerEx(Timer, DueTime, 0, Dpc);
}

游客

返回顶部