![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Java Multi-thread
Bwz_Learning
Change the world by program.
展开
-
5、一个关于并发包的图片
转载 2016-05-11 16:57:30 · 452 阅读 · 0 评论 -
3、从volatile说到i++的线程安全问题
简介 volatile关键字保证了在多线程环境下,被修饰的变量在别修改后会马上同步到主存,这样该线程对这个变量的修改就是对所有其他线程可见的,其他线程能够马上读到这个修改后值. Thread的本地内存 每个Thread都拥有自己的线程存储空间Thread何时同步本地存储空间的数据到主存是不确定的 例子 借用Google JEREMY MANSON转载 2016-05-11 13:36:29 · 482 阅读 · 0 评论 -
2、深度剖析ConcurrentHashMap
原文地址:qifuguang.me/2015/09/10/[Java并发包学习八]深度剖析ConcurrentHashMap/ 1 ConcurrentHashMap的目的 多线程环境下,使用Hashmap进行put操作会引起死循环,导致CPU利用率接近100%,所以在并发情况下不能使用HashMap。虽然已经有一个线程安全的HashTable,但是HashTable容器使用s转载 2016-05-10 22:04:06 · 410 阅读 · 0 评论 -
1、关于HashMap在多线程下的不安全分析
原文网址:http://coolshell.cn/articles/9606.html/comment-page-1#comments 1、问题的症状 从前我们的Java代码因为一些原因使用了HashMap这个东西,但是当时的程序是单线程的,一切都没有问题。后来,我们的程序性能有问题,所以需要变成多线程的,于是,变成多线程后到了线上,发现程序经常占了100%的CPU,查看堆栈,你会转载 2016-05-10 21:12:10 · 639 阅读 · 0 评论 -
4、线程池的原理及实现
1、线程池简介: 多线程技术主要解决处理器单元内多个线程执行的问题,它可以显著减少处理器单元的闲置时间,增加处理器单元的吞吐能力。 假设一个服务器完成一项任务所需时间为:T1 创建线程时间,T2 在线程中执行任务的时间,T3 销毁线程时间。 如果:T1 + T3 远大于 T2,则可以采用线程池,以提高服务器性能。 一个线程转载 2016-05-11 14:26:38 · 509 阅读 · 0 评论 -
Condition-线程通信更高效的方式
接近一周没更新《Java线程》专栏了,主要是这周工作上比较忙,生活上也比较忙,呵呵,进入正题,上一篇讲述了并发包下的Lock,Lock可以更好的解决线程同步问题,使之更面向对象,并且ReadWriteLock在处理同步时更强大,那么同样,线程间仅仅互斥是不够的,还需要通信,本篇的内容是基于上篇之上,使用Lock如何处理线程通信。 那么引入本篇的主角,Condition,Con转载 2016-12-05 16:05:26 · 315 阅读 · 0 评论