自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

熊猫猫

恋恋不忘 必有回响

  • 博客(8)
  • 资源 (5)
  • 收藏
  • 关注

转载 编译JDK源代码,开启Debug信息

看JUC源码的时候,想debug查看一些本地变量,不行,然后百度之,找到一个方法,仅此记录!百分百可以! 用Eclipse Debug,当跟踪进jdk api里时(比如javax.swing包里的类),无法查看某些local filed的值。这是因为jdk里的代码在打包时删除了一些用于调试的信息,以减小安装包的体积。不过可以通过重新编译jdk源代码来恢复此功能。 1.在Eclips

2016-07-29 11:39:22 1254

原创 JUC源码分析22-队列-SynchronousQueue

SynchronousQueue是一种比较特殊的阻塞队列,不同于之前的阻塞队列,特点为: 1.每次put必须有take的存在,也就是说生产者将一个元素put传递给一个消费者,消费者不存在就put不成功; 2.内部没有容量来维持存放元素,所以size,迭代等一些方法没有意义; 3.使用cas操作,没有使用锁; 4.通过栈(非公平),队(列公平)2中结构来支持公平\非公平策略。 newC

2016-07-26 17:06:44 770

原创 Eclipse 控制台中文乱码

一个坑跳了2次,记录下,eclipse中文在控制台打印乱码。run->run configurations->commons->GBK:

2016-07-21 17:29:03 558 1

原创 JUC源码分析21-队列-LinkedBlockingDeque

LinkedBlockingDeque基于双向链表实现的阻塞队列,根据构造传入的容量大小决定有界还是无界,默认不传的话,大小Integer.Max。 实现BlockingDequeue接口,这个接口继承BlockingQueue和Dequeue,看下接口方法: public interface BlockingDeque extends BlockingQueue, Deque { /**

2016-07-12 15:51:24 1081

原创 JUC源码分析20-队列-DelayQueue

画个JUC阻塞队列的类关系图,之前都没在意,画一下感觉会清楚很多 DelayQueue是无界的阻塞队列,其特点是实现队列元素的延迟出队,通俗点说就是队列元素可以设置延迟时间,时间不到,就待在队列中,很有意思的东西,感觉跟redis设置过期时间一样。队列元素不容许添加null元素。DelayQueue可以用来实现调度的定时任务或者缓存的过期。 添加的队列元素必须实现Delayed接口:

2016-07-11 18:03:04 946

原创 JUC源码分析19-队列-PriorityBlockingQueue

PriorityBlockingQueue是一个基于数组实现的线程安全的无界队列,原理和内部结构跟PriorityQueue基本一样,只是多了个线程安全。javadoc里面提到一句,1:理论上是无界的,所以添加元素可能导致outofmemoryerror;2.不容许添加null;3.添加的元素使用构造时候传入Comparator排序,要不然就使用元素的自然排序。 PriorityBlocking

2016-07-08 18:49:02 2208

原创 JUC源码分析18-队列-LinkedBlockingQueue

LinkedBlockingQueue是基于单向链表实现的有界阻塞队列,队列元素遵循FIFO,LinkedBlockingQueue比基于数组的阻塞队列拥有更好的吞吐量,但是在大部分并发应用中,性能不如基于数组的队列。 和ArrayBlocingQueue一样继承AbstractQueue,实现BlockingQueue接口,不再看BlockingQueue接口代码,直接看LinkedBlock

2016-07-06 18:05:38 633

原创 JUC源码分析17-队列-ArrayBlockingQueue

看ArrayBlockingQueue的javadoc说明,简单翻译过来: 1.基于数组实现的有界阻塞队列,队列采用FIFO; 2.因为基于数组,所以队列创建后大小不能改变。线程在插入元素到一个满的队列时会阻塞,线程获取元素时,队列为空也会阻塞; 3.对于队列的生产和消费线程提供了公平非公平策略。 ArrayBlockingQueue继承AbstractQueue抽象类,实现了Blocki

2016-07-06 14:33:05 455

一致性hashjava实现

别人写的一个一致性hash的java实现,分享下

2015-12-10

springboot2.X+maven+mybatis+shiro+redis

之前看的一哥们的springboot整合shiro的demo,springboot是1.X,自己改成了2.X,其他基本相同,部署请看https://blog.csdn.net/xiaoxufox/article/details/88965235

2019-04-02

ActiveObject

多线程设计模式-activeObject代码

2015-12-07

mybase管理

myBaseDesktop6破解版可以用来做知识库管理,力挺

2013-01-27

javaConcurrentAnimated

动画演示java并发库的API javaConcurrentAnimated

2015-12-11

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除