COM 多线程 事件订阅问题
遇到一个问题,关于COM 的,(OPC 规范)
在我们应用中,使用了一个线程来对 该 COM 对象进行操作.
并且该 COM 对象, 支持通过 IConnectionPointContainer 增加 IDataCallBack 回调处理变化数据.
所有工作包括 初始化 COM 对象, 中间操作, 以及订阅变化数据这些过程全部在这个线程中完成,
但是为什么所有 为什么 我这边 IDataCallBack 就收不到变化数据呢?
以前实现的时候,使用 所有与 COM 对象操作的时候,都使用 了 Synchronize 来让主线程做工作,
是没有问题的.
对COM的理解不够深入 ,怎么才能让子线程实现完整的 COM操作呢?
在我们应用中,使用了一个线程来对 该 COM 对象进行操作.
并且该 COM 对象, 支持通过 IConnectionPointContainer 增加 IDataCallBack 回调处理变化数据.
所有工作包括 初始化 COM 对象, 中间操作, 以及订阅变化数据这些过程全部在这个线程中完成,
但是为什么所有 为什么 我这边 IDataCallBack 就收不到变化数据呢?
以前实现的时候,使用 所有与 COM 对象操作的时候,都使用 了 Synchronize 来让主线程做工作,
是没有问题的.
对COM的理解不够深入 ,怎么才能让子线程实现完整的 COM操作呢?
...全文
相关推荐
COM事件通知代码,有参考价值
**线程安全性和事件调度**: - 在多线程环境中,必须确保事件通知是线程安全的,防止数据竞争和同步问题。
ATL_COM组件开发,多线程中应用连接点传递消息实例
定义一个事件接口:这个接口定义了将被触发的事件方法。2. 创建一个包含连接点的COM服务器:服务器对象实现该事件接口,并提供连接点来允许其他对象订阅事件。3.
通过窗口传递让主线程触发FIRE事件(子线程不能触发)
在Windows应用程序开发中,尤其是使用Microsoft的ActiveX技术或者COM组件时,经常遇到多线程交互的问题。"
visual c++ com编程
**COM事件处理**:学习如何在COM组件中实现事件发布和订阅,以及如何使用连接点容器和连接点来处理事件。6.
com基本框架(学习com必备)
这通常通过接口中的事件方法和连接点容器实现,连接点容器管理客户端对事件的订阅。10. **错误处理**:COM使用HRESULT返回值来表示操作结果,包括成功、失败和特定错误代码。



