songlu791018
驱动牛犊
驱动牛犊
  • 注册日期2002-12-03
  • 最后登录2004-11-11
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
阅读:986回复:8

有关定时中断的问题

楼主#
更多 发布于:2003-02-17 17:03
如果要使程序每隔100ms定时运行一个函数,应该如何编写!
lxcomcn
驱动老牛
驱动老牛
  • 注册日期2002-07-31
  • 最后登录2010-12-10
  • 粉丝0
  • 关注0
  • 积分110分
  • 威望43点
  • 贡献值0点
  • 好评度21点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2003-02-17 17:32
如果要使程序每隔100ms定时运行一个函数,应该如何编写!
用什么做? :D
[img]http://www.nbuser.com/vb/avatar.php?userid=10792&dateline=1046232652 [/img] 我要作诗!!!
songlu791018
驱动牛犊
驱动牛犊
  • 注册日期2002-12-03
  • 最后登录2004-11-11
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2003-02-18 08:00
用DDK做
X_ray
驱动中牛
驱动中牛
  • 注册日期2003-02-03
  • 最后登录2004-07-24
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
地板#
发布于:2003-02-18 10:12
精度多少?
arthurtu
驱动巨牛
驱动巨牛
  • 注册日期2001-11-08
  • 最后登录2020-12-19
  • 粉丝0
  • 关注0
  • 积分26分
  • 威望161点
  • 贡献值0点
  • 好评度35点
  • 原创分0分
  • 专家分0分
  • 社区居民
地下室#
发布于:2003-02-18 10:12
KeInitializeTimer
KeInitializeTimerEx
songlu791018
驱动牛犊
驱动牛犊
  • 注册日期2002-12-03
  • 最后登录2004-11-11
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
5楼#
发布于:2003-02-18 11:40
程序的代码如下:
LARGE_INTEGER duetime = {0};
NTSTATUS status;
#define POLLING_INTERVAL 100
KeInitializeTimerEx(&timer, SynchronizationTimer);
KeSetTimerEx(&timer, duetime, POLLING_INTERVAL, NULL);
while (true)
{
   status = KeWaitForSingleObject(&timer,Executive, KernelMode, FALSE, NULL );
   if ( status == STATUS_SUCCESS )
     aa++;
}
为什么每次运行的时候就会死机? :(
程序中又什么问题!
ice_fire333
驱动老牛
驱动老牛
  • 注册日期2002-10-08
  • 最后登录2007-08-13
  • 粉丝0
  • 关注0
  • 积分31分
  • 威望4点
  • 贡献值0点
  • 好评度1点
  • 原创分0分
  • 专家分0分
6楼#
发布于:2003-02-18 18:14
定时中断,查询方式???
赵客缦胡缨,吴钩霜雪明。银鞍照白马,飒沓如流星。   十步杀一人,千里不留行。事了拂衣去,深藏身与名。   闲过信陵饮,脱剑膝前横。将炙啖朱亥,持觞劝侯嬴。   三杯吐然诺,五岳倒为轻。眼花耳热后,意气素霓生。   救赵挥金槌,邯郸先震惊。千秋二壮士,煊赫大梁城。   纵死侠骨香,不惭世上英。谁能书阁下。白首太玄经。
arthurtu
驱动巨牛
驱动巨牛
  • 注册日期2001-11-08
  • 最后登录2020-12-19
  • 粉丝0
  • 关注0
  • 积分26分
  • 威望161点
  • 贡献值0点
  • 好评度35点
  • 原创分0分
  • 专家分0分
  • 社区居民
7楼#
发布于:2003-02-18 22:52
程序的代码如下:
LARGE_INTEGER duetime = {0};
NTSTATUS status;
#define POLLING_INTERVAL 100
KeInitializeTimerEx(&timer, SynchronizationTimer);
KeSetTimerEx(&timer, duetime, POLLING_INTERVAL, NULL);
while (true)
{
   status = KeWaitForSingleObject(&timer,Executive, KernelMode, FALSE, NULL );
   if ( status == STATUS_SUCCESS )
     aa++;
}
为什么每次运行的时候就会死机? :(
程序中又什么问题!

有没有看DDK或其他什么的呀? :D
提供一个DPC,当你的POLLING_INTERVAL计数完了,就执行你的这个DPC例程。
songlu791018
驱动牛犊
驱动牛犊
  • 注册日期2002-12-03
  • 最后登录2004-11-11
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
8楼#
发布于:2003-02-19 16:29
我现在需要在Dpc里向上层应用程序发事件(KeSetEvent),如何去做?
游客

返回顶部