- 博客(11)
- 资源 (10)
- 收藏
- 关注
原创 Java并发学习(十九)-Java8中ConcurrentHashMap分析
断断续续看了那么些天,趁着周末把知识记下来。在平常编程时,HashMap是用的很频繁的一个类,但是,当在并发情况下,却不推荐使用它,因为它没有做任何的并发控制,不安全,是个隐患。当然,在Java中,也有适用与并发情况下对应HashMap的HashTable,以及Collections包装的synchronizedMap 方法。二者原理基本一直,都是在HashMap基础上,给方法加上synchroni
2017-12-19 08:56:14 825 1
原创 Java并发学习(十八)-并发工具Exchanger
断断续续看了一个多礼拜,Exchanger总算是看明白了,思想不难,但是不理解思想去看代码就比较难了。 下面慢慢学习。What is Exchanger关于Exchanger,你可以把他看做一个中介,或者信使,它可以让两个运行的线程相互交换东西(Object),并且是带阻塞性质的。 打个比方,两个线程A,B两个要交换东西oa和ob,它们都在运行,使用exchanger这个中介,因为线程调度,并不
2017-12-15 17:36:46 490
原创 maven下配置ojdbc包
这些天新跟进了一个项目,maven管理,clone一个项目后,发现maven无法再中央仓库或者阿里云的仓库获得ojdbc的jar包,估计是版权问题,所以得自己配置ojdbc包。寻找ojdbc6或ojdbc7包本来想从csdn上下载,发现都要积分,有的甚至开到了15分,虽然有这么多分,但本着开源精神,不应该免费吗? 所以觉得去oracle官网找,最终找到了ojdbc的下载地址: http://ww
2017-12-15 09:51:38 2372 1
原创 再次遇到"Perhaps you are running on a JRE rather than a JDK" 小记
这些天在工作时候,在eclipse中执行maven命令install时候,突然遇到了这个问题:Compilation failure No compiler is provided in this environment. Perhaps you are running on a JRE rather than a JDK?因为以前处理过,大致意思就是maven项目必须在jdk环境下运行,而不是jr
2017-12-14 14:08:04 538
原创 Java并发学习(十七)-并发工具CountDownLatch
另一个并发工具,CountDownLatch,和CyclicBarrier功能上有点类似,但是在实现上和是不同的。What is CountDownLatch简单的说,也是一个计数器,和CyclicBarrier相比,一定方面是更加灵活的,CountDownLatch可以在任意代码处通知自己已完成,等所有都做完时,主线程就可以接下来运行了。有需要可参看:Java并发学习(十六)-并发工具Cyclic
2017-12-10 18:52:57 408
原创 Java并发学习(十六)-并发工具CyclicBarrier
What is CyclicBarrier从名字来看,barrier:栅栏,cyclic:循环的。 简单点说,它能够让一组数量线程在某一个时间点等待,当所有线程都到了,再让它们运行。 例如有这样一个情景,有n个excel表格数据,你需要获取他们所有的数据后,再进行下一步运算。利用CyclicBarrier来做,首先需要开n个线程,等这n个线程都完成到达这个点,再进行下一步运算。 首先看它的内部
2017-12-09 23:29:58 377
原创 Java并发学习(十五)-并发工具Semaphore
What is Semaphore一个并发工具Semaphore,位于java.util.concurrent 下面,在并发家族里面充当着工具类的角色。 那么Semaphore作为一个工具,有什么作用呢? 控制容量,就好比一个停车场,容量为100,已经听了50,所以此时还能再停50,如果已经停了100的话,那么外面的车就进不去了,只能在外面等。此时当有车出来时,才能有车进去。具体实现首先看Sem
2017-12-09 16:39:27 419
原创 Java并发学习(十四)-StampedLock深入浅出
Java8在concurrent.lock下新加了一个类:StampedLock,这个类和其他锁的类,都不相同。下面一起来学习下这个类。What is StampedLock记得在学习AtomicStampedReference 时,里面是用一个标志stamp,来解决ABA问题。即通过版本号,来检验是否保持一个相对静止的状态,从而能够保证更加线程安全的读写。具体可看:Java并发学习(十)-CAS中
2017-12-06 13:24:24 1024
原创 Java并发学习(十二)-ReentrantLock分析
What is ReentrantLockReentrantLock,从单词字面上理解,就是可重入锁,他内部实现了两种锁的机制,公平锁与非公平锁,排他性的, 继承自AbatractQueuedSynchronizer,依靠着AQS里面的FIFO队列进行线程的调度。可以参看:Java并发学习(三)-AbstractQueuedSynchronizerLock介绍ReentrantLock继承Lock接
2017-12-01 14:07:41 474 1
Spring Cloud-Eureka-docker
2018-06-09
将Spring boot应用打包成镜像放到docker中运行
2018-04-14
1004. Counting Leaves (30)
2017-01-04
安卓httpClient例子
2016-06-22
数据库相关jar包
2015-03-10
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人