上下文外挂钩函数

以下列表概述了上下文外挂钩函数的主要方面:

  • 上下文外挂钩函数位于客户端的地址空间中,无论它是在代码正文中还是在 DLL 中。
  • 上下文外挂钩函数不会映射到服务器的地址空间。
  • 触发事件时,挂钩函数的参数将跨进程边界封送。
  • 由于封送处理,上下文外挂钩函数明显比上下文中挂钩函数慢。
  • 由于执行封送处理) 所需的时间,系统会将事件通知排队,以便它们以异步方式 (到达。

尽管事件通知是异步的,但 Microsoft Active Accessibility 可确保回调函数按事件生成的顺序接收所有事件。

操作系统的 USER 组件为由上下文外挂钩函数处理的事件分配内存。 挂钩函数返回时释放内存。 如果挂钩函数处理事件的速度不够快,则 USER 资源会降低,最终导致故障或响应时间极慢。 在以下情况下,可能会出现这些问题:

  • 事件触发速度非常快。
  • 系统速度缓慢。
  • 挂钩函数处理事件的速度很慢。
  • 客户端在 Windows 9x 上运行。