若有收获,请记得分享和转发哦
并发编程是 java 高级程序员的必备的基础技能之一。但是想要写好并发程序并非易事。
那究竟是什么原因导致大把的“格子衫”朋友无法写出优质和性能稳定的并发程序呢?根本原因就是大家对并发编程的核心理论的模糊和不理解。想要运用好一项技术。理论知识和核心概念是一定要理解透彻的。
今天我们就来一起看下并发编程三大核心基础理论:原子性、可见性、有序性
1、原子性
先来看下什么叫原子性
第一种理解:原子(atomic)本意是“不能被进一步分割的最小粒子”,而原子操作(atomic operation)意 为“不可被中断的一个或一系列操作”
第二种理解:原子性,即一个操作或多个操作,要么全部执行并且在执行的过程中不被打断,要么全部不执行。(提供了互斥访问,在同一时刻只有一个线程进行访问)
原子,在物理学中定义是组成物体的不可分割的最小的单位。在 java 并发编程中我们可以将其理解为:一组要么成功要么失败的操作。
4、本文小结
并发编程的学习和使用并非一朝一夕的事情,也并非会几个理论就能写好优质的并发程序。这需要长时间的实践和总结。好的代码很少是写出来的,都是迭代和优化的。