peakzhang 发表于 2008-7-15 23:02:08

ACE初学者的低级问题

是不是每个应用程序只能有一个ACE_Reactor;还有ACE_Reactor如何将事件分离到不同的对象中处理;
另外如何向反应器注册自定义的事件

peakzhang 发表于 2008-7-15 23:02:16

可以有多个,同时运行没有问题,但是你不能简单的用ACE_Reactor::instance()了,必须在需要使用Reactor的地方,手工加上实例。

peakzhang 发表于 2008-7-15 23:02:27

如何用多个呢?不是只有一个Singleton就保存内存中只有一个实例了吗?我感到困惑就是,不论是Proactor,还是Actor框架,都是用的Singleton,表示是一个进程空间中就只有一个了.难道每次都把Instance参数变一下,重新运行Event! 那以前的事件处理被中断了吗?会不会有资源问题哦!

我也是最近才用ACE,看了源码的几个例子,看了那个C++网络编程的数,搞得很多不是很清楚

peakzhang 发表于 2008-7-15 23:02:31

使用Singleton是大多数情况,也可以完全不用啊。大多数情况下,用Singleton会非常方便,也足够了。
但是如果你不想用这个,就得在各个模块初始化的时候,自己仔细查看接口参数,传入你创建的对象。
不是你说的那样,重复调用Singleton的对象,而是一个对象就是一个,在传入其它对象的时候区分。
页: [1]
查看完整版本: ACE初学者的低级问题