关于对对象的状态进行监控

neonicholasi 2008-01-07 11:03:54
小弟我现在手头上在做一个项目,其中有几个类的状态需要监控(主要是成员变量),发生变化的时候要触发一系列活动

用observer模式的话需要在这些类的对象的更新过程中通知observer来触发动作,就算再加上符合MVC框架的事件,也还是需要在代码里显式地生成事件才能触发动作

请问有没有办法设计一个类专门负责主动监听observable的状态,在observable的对象的状态发生变化时去调用对应的过程呢?
如果有,又该怎么实现呢?

谢谢!
...全文
113 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
w4zhangzhenfang 2008-07-31
  • 打赏
  • 举报
回复
在getter、setter上加些附加操作就行了
gaoteng1984 2008-07-18
  • 打赏
  • 举报
回复
[Quote=引用楼主 neonicholasi 的帖子:]
在observable的对象的状态发生变化时去调用对应的过程
[/Quote]
如果不让被观察者将自己的状态变化通知观察者,那就只能让观察者自己去轮询被观察者了。
while(true)
{
isChange = Observe(obserableObj);
if (isChange)
{// Do something.
}
....
}
如果有实时性要求,就要让观察者与被观察者使用不同的线程了,用到多线程,observer轮询obserable对象的状态。
knowledge_Is_Life 2008-04-30
  • 打赏
  • 举报
回复
都是很好的建议! 值得学习
xingchenbbs 2008-03-19
  • 打赏
  • 举报
回复
星辰技术社区:www.netcsharp.cn,我们将帮您以最快的速度找到最佳的解决方案
lextm 2008-01-16
  • 打赏
  • 举报
回复
直接使用AOP实现自然没问题。但是太过于追求完美了。

简单用Spring的容器就可以配置出AOP效果了,可以减少不少自己写代码的过程。
neonicholasi 2008-01-14
  • 打赏
  • 举报
回复
neonicholasi 2008-01-08
  • 打赏
  • 举报
回复
晕,没人知道吗???

3,409

社区成员

发帖
与我相关
我的任务
社区描述
专题开发/技术/项目 设计模式
社区管理员
  • 设计模式
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧