查看单个帖子
  #9 (permalink)  
旧 2008-02-16
sjinny 的头像
sjinny sjinny 当前离线
普通会员
 
注册日期: 2008-02-01
帖子: 66
sjinny 正向着好的方向发展
默认 回复: 请教一下关于析构的问题……

引用:
作者: liuxinyu 查看帖子
个人爱好,我比较喜欢这个方法,activity是一个policy。

另外也有一些其他策略,但不执着于RAII。
1. 首先,把Active的构造函数变成protected。这样任何人都不能自己构造任何Active对象在栈上。
2. 设计一ActiveManager,管理所有Active对象,其被声明为Active的friend
ActiveManager可以放到栈上,析构时遍历其管理的对象,如果IsRunning为true就join,否者直接干掉。
嗯,这个方案是可行的,但是这样就意味着只能使用Manager来管理,而不能简单直接地使用桟了。
我现在这样也是可以用Manager的,只不过不是强制的。
桟是个简单直接的管理工具,我不希望丢弃它而强迫用户使用更复杂的Manager。
^_^!
回复时引用此帖