多线程
Chihay
奋斗,就是每一天都很难,却一年比一年容易。
展开
-
synchronized 分析和使用
意义 synchronized可以实现一个简单的策略来防止线程互相干扰和内存一致性的错误。如果一个对象对于多个线程是可见的,那么对该对象的读或者写都将使用同步的方式进行。具体体现如下: 1、synchronized关键字提供锁的机制,能够确保共享变量的互斥访问,从而达到内存数据的一致性 2、synchronized关键字提供monitor enter 和monitor exit两个JVM指令...原创 2020-04-14 12:08:21 · 257 阅读 · 0 评论 -
Java内存与volatile的分析
cpu cache的出现 由于CPU直接访问主存的速度过慢,导致CPU资源受到很大限制,降低了CPU的整体的吞吐量。所以就有了CPU缓存的出现。现在的缓存一般有2-3级,最靠近CPU的是1级缓存。CPU的cache比较大,一般128KB,被分为多个固定大小的cache line,cache line通常是32byte或者64byte. 因为CPU cache的访问主存的速度比CPU直...原创 2018-09-03 22:40:47 · 343 阅读 · 0 评论