BCB/VisiBroker下Corba Event Service使用方法

品雪 1999.11.8
pinxue@hotmail.com http://pinxue.yeah.net

Corba Event Service使用生产者/消费者模式工作,产生事件的对象为生产者,接收事件的为消费者,两者通过EventChannel联系。Event Service支持Push模式和Pull模式,前者生产者在必要时将事件数据发给通道,通道有一个循环随时侦听生产的动态,而Pull模式则相反,生产者提供一个侦听循环响应通道的数据请求。

将生产者边连接到事件通道上
步骤 Push生产者 Pull生产者
绑定到EventChannel EventChannel::_bind() EventChannel::_bind()
取得生产者管理器 EventChannel::for_suppliers() EventChannel::for_suppliers()
取得一个消费者代理 SupplierAdmin::obtain_push_consumer() SupplierAdmin::obtain_pull_consumer()
将生产者加到事件通道中 ProxyPushConsumer::connect_push_supplier() ProxyPullConsumer::connect_pull_supplier()`
数据传输 ProxyPushConsumer::push() Implements pull() and try_pull()

 

将消费者连接到事件通道上
步骤 Push消费者 Pull消费者
绑定到EventChannel EventChannel::_bind() EventChannel::_bind()
取得消费者管理器 EventChannel::for_consumers() EventChannel::for_consumers()
取得一个生产者代理 SupplierAdmin::obtain_push_supplier() SupplierAdmin::obtain_pull_supplier()
将生产者加到事件通道中 ProxyPushConsumer::connect_push_consumer() ProxyPullConsumer::connect_pull_consumer()`
数据传输 Implements push() ProxyPushSupplier::pull() and try_pull()