12 2021 档案
摘要:一、概述 1、介绍 I/O是 Input/Output 的缩写,IO流用来处理设备之间的数据传输,如读/写文件,网络通讯等。Java对数据的操作是通过流的方式进行。java.io 包下提供了各种"流"类和接口,用以获取不同种类的数据,并通过标准的方法输入或输出数据。 输入input:读取外部数据(磁
阅读全文
摘要:一、乐观锁和悲观锁 1、乐观锁 乐观锁只是一种设计思想,并不是真的有一种锁是乐观的。 思想:每次操作共享数据之前,都认为其他线程不会修改数据,所以都不获取锁,直接操作。只在最后更新的时候会判断一下在此期间是否有其他线程更新过这个数据。其实是一种无锁状态的更新。 典型实现:数据库版本号;CAS算法。
阅读全文
摘要:一、原子类 1、CAS算法 强烈建议读者看这篇之前,先看这篇 初识JUC 的前两节,对原子性,原子变量,内存可见性有一个初步认识。 CAS(Compare and Swap)是一种硬件对并发的支持,针对多处理器操作而设计的处理器中的一种特殊指令,用于管理对共享数据的并发访问,是硬件对于并发操作共享数
阅读全文