首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在典型的nw应用程序中,我们为什么需要NotifyRouteChange

在典型的nw应用程序中,我们为什么需要NotifyRouteChange
EN

Stack Overflow用户
提问于 2015-02-19 16:42:21
回答 2查看 210关注 0票数 0

我有一个应用程序,它注册NotifyRouteChange()并在异步调用中等待。我们知道,根据Windows操作系统对路由表的更改,此API会被回调。我需要更多关于Windows触发此功能的信息?

在我的一个Win 7 Professional环境中,我在一秒钟内收到100个IP地址更改通知。如何减少它?

谢谢,萨拉瓦那

EN

回答 2

Stack Overflow用户

发布于 2015-03-12 11:32:21

看起来像是环境问题。

我用过

代码语言:javascript
运行
复制
   ret = NotifyAddrChange(handle, &overlap);
   ret = NotifyRouteChange(handle, &overlap)); 

然后有一个回调函数来监控这些注册,如果IP地址/路由中有任何变化,这些回调已经被启动。这些回调函数已将这些通知传递给我的其他线程进行处理,并再次注册相同的API。

这个问题并不是在所有的机器上都会发生,而是在特定的环境中发生。我的网络不会抛出任何问题。

票数 0
EN

Stack Overflow用户

发布于 2017-02-13 22:05:26

使用可等待的计时器来抑制事件,以便在上次NW更改事件后的最短时间后触发事件处理程序:

基本上,当您收到地址/路由更改事件时:

  1. 设置可等待计时器(5秒) (SetWaitableTimer)
  2. Every地址/路由事件变成信号的时间,取消现有的可等待计时器(CancelWaitableTimer)并转到1.
  3. 如果可等待时间变成信号,则意味着地址/路由改变事件在最近5秒内没有发生。请在此处致电您的NW变更处理程序。
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/28601811

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档