首页 > 解决方案 > IWbemObjectSink::Indicate 的多个实例可以同时运行吗?

问题描述

我正在编写一个 C++ 应用程序来使用 WMI 在 Windows 上记录创建的进程,如Microsoft 提供的这个示例所示。正如您在示例代码中所见,应用程序提供了一个带有方法的事件接收器EventSink::Indicate(),然后在创建新进程时由 WMI 异步调用该方法。

我的问题是,是否可以保证不同的回调是连续的,因此没有两个回调可以同时运行?这让我很担心,因为我的Indicate()方法实现有时会修改EventSink对象的属性,显然我想避免数据竞争。我应该将数据放在互斥锁后面进行协调,还是保证不会发生?

标签: c++winapiconcurrencywmi

解决方案


推荐阅读