摘要: 观察者模式在软件编程中用的较多,我不善于表达我就用在网上看到的故事,和生活的例子说下基本思想故事: 小雪是一个非常漂亮的女孩,漂亮的女孩总是有很多的追求者,而且追求者的队伍在不断的变动,随时有人进入这个队伍,也有人退出。男孩们追求女孩时总是表现出120%的关心,当小雪私自游玩时总是不断收到追求者询问小雪位置变动的消息,小雪也不胜其烦,但小雪是如此的一个善良的女孩,她总是打断自己正常的生活回复男孩们的消息。而男孩们由于要不断的关心小雪的位置变化也弄的精疲力竭,而且还影响正常的工作。在这样一个简单的故事场景中我们发现了什么?来看看小雪和男孩们的烦恼: 1.男孩们必须不断的询问小雪的位置变化,从而. 阅读全文
posted @ 2011-03-28 16:05 dkcndk 阅读(779) 评论(0) 推荐(0) 编辑
摘要: epoll:Edge and Level Trigger Polling (epoll)边缘触发(edge trigger)和条件触发(level trigger)边缘触发是指每当状态变化时发生一个io事件,条件触发是只要满足条件就发 生一个io事件。举个读socket的例子,假定经过长时间的沉默后,现在来了100个字 节,这时无论边缘触发和条件触发都会产生一个read ready notification通知应用程 序可读。应用程序读了50个字节,然后重新调用api等待io事件。这时条件触发的api会 因为还有50个字节可读从而立即返回用户一个read ready notification。 阅读全文
posted @ 2011-03-28 14:03 dkcndk 阅读(4108) 评论(1) 推荐(1) 编辑
摘要: 如果你想写一个 Java 程序,观察某对象什么时候会被垃圾收集的执行绪清除,你必须要用一个 reference 记住此对象,以便随时观察,但是却因此造成此对象的 reference 数目一直无法为零, 使得对象无法被清除。 java.lang.ref.WeakReference 不过,现在有了 Weak Reference 之后,这就可以迎刃而解了。如果你希望能随时取得某对象的信息,但又不想影响此对象的垃圾收集,那么你应该用 Weak Reference 来记住此对象,而不是用一般的 reference。 A obj = new A();WeakReference wr = new WeakR 阅读全文
posted @ 2011-03-28 13:01 dkcndk 阅读(347) 评论(0) 推荐(0) 编辑
点击右上角即可分享
微信分享提示