- 博客(7)
- 收藏
- 关注
原创 Strong Reference, Soft Reference, Weak Reference, Phantom Reference以及垃圾回收
有关这个话题的东东在网上一搜一大把,或许是网上讲的并不是很全,不是自己所需要的,再加上想让自己[size=medium][/size]有点理性认识。因此自己试验一把,记录下来以备后用。 Strong Reference — 强引用就不用说了,基本上写代码时引用某个对象是都用的是强引用。Soft Reference – 软引用JDK中描述确保在抛出“OutOfMemory”前被回...
2012-08-05 22:43:43 107
原创 指尖上的代码--之ACTIVEMQ(5)
ResponseCorrelator—有响应的消息发送现在来回答一下第二个问题,为什么装饰对象继承了TransportListener?先来看一下Transport接口,刨去其他辅助类功能,真正发送消息的是以下四个方法。public interface Transport extends Service { void oneway(Object command...
2012-06-22 07:47:00 97
原创 指尖上的代码--之ACTIVEMQ(4)
FailoverTransport—Transport重连机制已经找到了开启和完成任务的地方,那么到底在哪里调用开启工作任务的呢?搜寻FailoverTransport发现,一个在FailoverTransport构造函数创建TaskRunner时传入的Task匿名对象中反调TaskRunner的wakeup方法。它是在前面讲到的完成重连工作的doReconnect()失败后,再...
2012-06-16 20:49:29 189
原创 指尖上的代码--之ACTIVEMQ(3)
首先回过头来看一下FailoverTransport的工厂类FailoverTransportFactory生成FailoverTransport后,FailoverTransport transport = newFailoverTransport();添加了两份装饰, transport = new MutexTransport(transport);tr...
2012-06-16 20:39:52 103
原创 指尖上的代码--之ACTIVEMQ(2)
以下重点讲一下Transport transport = createTransport();创建Transport的过程。protected Transport createTransport() throws JMSException { try { return TransportFactory.connect(brokerURL, DEFAULT_CONNE...
2012-06-13 20:38:00 130
原创 指尖上的代码--之ACTIVEMQ(1)
指尖上的代码--之ACTIVEMQ1、 简要介绍ACTIVEMQ是APACHE旗下一个消息中间件开源项目,符合JMS规范标准,ACTIVEMQ5以后通过集成CAMEL全面支持Enterprise Integration Patterns。ACTIVEMQ作为一个JMS Provider,在看ACTIVEMQ源码之前假定对JMS有点了解。 2、 作为JMS CLIENT的...
2012-06-13 20:21:09 117
原创 读开源项目
读开源项目读开源项目作为提升自我专业能力的一种途径,自己也算读过一些开源代码,分享一下其中感受,当中观点纯属一家之言。 1、为什么要读开源项目?C++之父Bjarne Stroustrup在The C++ Programming Language这本书上说过,学习一门特定语言,如C++、Java、Python,无非一学该语言的语法,二学支持该语言的API、第三方支持库。然而作为写程...
2012-06-10 08:54:01 131
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人