- 博客(11)
- 资源 (6)
- 收藏
- 关注
原创 jdk-ThreadPoolExecutor(三)---内部Worker和执行方法
第三篇了,其实关于多线程这边的话,我想一直分下去,每一篇都研究一点,不太想将所有的知识点都放在一起,放在一起,读起来太费力了,看起来也不舒服,分下来之后至少一目了然,一个个知识点很清晰。今天的话就来看看它的一个内部类worker,这个worker应该算是核心了。private final class Worker extends AbstractQueuedSynchron
2017-06-26 22:22:25 962
原创 jdk-ThreadPoolExecutor(二)---内部参数和拒绝策略
承继上一篇,上一篇主要分析了下ThreadPoolExecutor中的大概执行逻辑,这一篇主要分析一下内部参数的写一写测试程序。首先来看里面的最终的默认构造方法,分析其参数,以及其流程//Executors中的四个构造方法最终调用的是下面一个初始化方法 public ThreadPoolExecutor(int corePoolSize,
2017-06-26 09:48:06 1070
原创 jdk-ThreadPoolExecutor(一)---基本变量和大致流程解析
之前测试CountDownLatch时,使用了线程池。ExecutorService service = Executors.newFixedThreadPool(3);service.submit(run);service.shutdown();基于此,今天来看看java给我们提供的线程池有哪些?作为码农,不能以会使用作为终极目标,了解源码觉得很有必要,通过源码,可以
2017-06-22 15:36:06 323
原创 jdk-CyclicBarrier(二)
jdk-CyclicBarrier这一篇主要是分析了它 的源码和运行图。这一篇来看看怎么运用,毕竟都是要使用的。上文在分析源码过程中发现有个代数的问题,在nextGeneration中会有下一代的出现,这个是否就是说它是可以重用的?不然哪会来区分一代,二代,三代呢?例子1:次例子中重复使用了CyclicBarrierpublic class TestCycB { priv
2017-06-21 14:24:41 234
原创 jdk-CyclicBarrier(一)
CyclicBarrier有点类似CountDownLatch,貌似都是个倒数计数器,这里暂且不去管异同点,先把CyclicBarrier分析完,应该就能知道不同了。//标志是否当前代,当前代我是这么理解的,每一次对象的生成就属于一代(个人观点) private static class Generation { boolean broken = false;
2017-06-21 08:48:00 267
原创 jdk-hashTable
今天光顾一下hashtable吧,其实又了之前hashmap和Concurrenthashmap的源码分析,再看hashtable,就显的简单多了。public Hashtable(int initialCapacity, float loadFactor) { //hashtable中默认值是11,也就是table的大小默认为11 loadFactor依然是0.75f
2017-06-20 09:53:22 199
原创 jdk-ConcurrentHashMap(一)
今天参与了一个java的招聘,本人自己的能力其实也一般,但是不巧的是,今天那位同学水平也非常一般,很多问题自己都没去研究过,在问过他平时遇到过什么问题时,这个问题其实很一般,很一般,稍微用点心的,其实都能记住自己遇到的一些麻烦事吧,挑几个来说下就行,或者自己私下准备几个自己能理解的问题,但是他直接回答没什么问题。。。。平时就是一些增删改查啊,没什么很难的问题,说到此,我大概明白了他的日常工作了,基
2017-06-19 13:48:51 248
原创 读 - 深入理解java虚拟机 - 笔记(一) - java内存区域模型(2章)
使用java也有好几年了,记得大学时是在听老师讲,觉得好像没多少东西啊,工作第一年并没有找到java岗位,而是做cobol去了,估计知道cobol的人少之又少吧。的确,这个语言真是太古老了,而且做这个最痛苦的是,很多资料都是企业内部资料,外面能找到的寥寥无几。干了一年,更多的时候都是在发邮件,扯皮,解决bug。银行的系统追求的是稳定而不是创新,做的很憋屈,又想重新回到java岗位上,但是简历投
2017-06-10 08:45:10 389
转载 转载别人整理的面试题,留着自己学习
最新整理简述synchronized?Object;Monitor机制;简述happen-before规则;JUC和Object;Monitor机制区别是什么;简述AQS原理;简述DCL失效原因,解决方法;简述nio原理;jvm运行时数据区域有哪几部分组成,各自作用;gc算法有哪些;gc收集器有哪些;简
2017-06-07 09:14:11 1446
原创 jdk-ArrayBlockingQueue
ArrayBlockingQueue其实和LinkedBlockingQueue是有点类似的。只不过一个是基于数组,一个是基于链表。Array中读写使用的是同一把锁,Linked读写使用的是两把分别的锁。 /** The queued items */ final Object[] items; /** items index for next take, poll, p
2017-06-06 10:20:23 247
原创 jdk-ConcurrentLinkedQueue(二)
第一篇详细画出了在入队和出队时的操作,看的真的很费时,说实话,我看了好几遍才动手开始画队列变换的图,并且在画图时还时不时的修正了很多次。。。总结出,对于jdk源码的话,多看几遍总能看出作者的意图的,不要害怕看不懂,看不懂第一遍,看二遍,三遍。这次的博客去看下此类中的其他一些方法,准备为将来的使用坐下基础。succ方法,向后推进方法,可以看出获取的是当前节点的后继节点,比较了 p 和next
2017-06-01 15:49:37 243
redis设计与实现
2017-11-08
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人