自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(3)
  • 收藏
  • 关注

原创 怎么解决缓存一致性问题?总线锁,缓存锁,MESI

为什么产生有线程安全问题?CPU的高速缓存线程是CPU最小的调度单元,当CPU去调度线程执行一些操作的时候,计算机的处理器需要与内存做交互的,比如读取一些数据和存储一些数据,由于这里的IO操作相对于CPU的运算熟读是非常慢的,所以在CPU和内存中间就引入了高速缓存,每一个核都会去维护其自己的高速缓存,而每个核的高速缓存是互相不可见的。这就产生了缓存一致性问题。以我们熟悉的i++举个例子,i...

2019-03-28 17:05:34 2940 6

原创 Java并发编程------线程安全问题:原子性,可见性,有序性和其物理层原理

线程安全问题有什么?为什么产生有线程安全问题?怎么解决线程安全问题?一般线程安全有三类——可见性问题,原子性问题,有序性问题。可见性:当某一个线程修改了某个共享变量,应及时让其他线程知道。而不会当线程A修改了共享变量,而线程B获取到的仍然是旧的值。原子性:首先确定的是,原子性是针对共享变量和多线程而存在的。 当某一个线程访问(读、写)某个共享变量的时候,对于其他的线程来说,这个线程只存在...

2019-03-28 12:02:02 509 1

原创 java并发编程------线程状态(interrupt(),isInterrupted()和interrupted())

这里写自定义目录标题线程的六种状态线程的启动,终止和复位众所周知,线程是操作系统运行的最小单元,在多核心的CPU中,多条线程同时执行,达到真正意义上的并发,可以让程序的性能极大的提升。但是,多线程一直以来就是编程中的难点,如果对其的原理认识不深,极有可能造成各种各样的问题,而且非常令人费解。那么,下面我将从线程的生命周期入手,开始认识并发编程。线程的六种状态java线程一共有6种状态:NE...

2019-03-24 11:28:56 611

空空如也

空空如也

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

TA关注的人

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