码迷,mamicode.com
首页 >  
搜索关键字:volatile    ( 1981个结果
单利模式
双重检查[推荐用] public class Singleton { private static volatile Singleton singleton; private Singleton() {} public static Singleton getInstance() { if (sin ...
分类:其他好文   时间:2020-08-04 18:14:21    阅读次数:65
Java虚拟机:十七、互斥同步、锁优化及synchronized和volatile
互斥同步 互斥同步(Mutual Exclusion & Synchronization)是常见的一种并发正确性保证手段。同步是指子啊多个线程并发访问共享数据时,保证共享数据在同一时刻只能被一个(或者是一些,使用信号量的时候)线程使用。而互斥是实现同步的一种手段,临界区(Critial Sectio ...
分类:编程语言   时间:2020-08-04 09:51:42    阅读次数:67
多线程顺序打印ABC
import java.util.concurrent.locks.ReentrantLock; public class AsynObject { private volatile int count; private ReentrantLock lock = new ReentrantLock( ...
分类:编程语言   时间:2020-08-02 16:13:31    阅读次数:81
Java中AQS基本实现原理
一、AQS概述 AQS全名AbstractQueuedSynchronizer,意为抽象队列同步器,JUC(java.util.concurrent包)下面的Lock和其他一些并发工具类都是基于它来实现的。AQS维护了一个volatile的state和一个CLH(FIFO)双向队列。 二、分析 st ...
分类:编程语言   时间:2020-07-30 14:22:04    阅读次数:63
解决Java的wait(long mills)方法不能区分其返回是由于超时还是被唤醒的问题
wait(long mills) 没有返回值,所以区分不了其返回是由于超时还是被唤醒,因此需要引入一个布尔变量,来表示它的返回类型。 class WaitTimeOut { private volatile boolean ready = false; // 如果是true,则表示是被唤醒 publ ...
分类:编程语言   时间:2020-07-26 19:24:08    阅读次数:88
浅析STM32 中常用的三个函数(sys.c,delay.c,usart.c)之一
1.sys.c(这个主要是定义位带区地址的宏定义,因此主要的代码都在sys.h中) 其实,本质上sys就是实现位带区映射(每1Bit)到位带别名区(每32位,即1字),从而我们可以操作位带别名区里的“别名”,进而操控位带区对应的位置。 支持了位带操作后,可以使用普通的加载/存储指令来对单一的比特进行 ...
分类:其他好文   时间:2020-07-26 00:58:16    阅读次数:66
C++语言关键字及注解
C++语言关键字及注解1、asm:允许在代码中直接插入汇编语言指令。2、auto:用来声明完全可选择的局部变量。3、bool:用来声明布尔逻辑变量。4、break:用来跳出一个do、for、while循环,也可以结束一个switch语句的句子5、case:在switch里面用来检测匹配。6、catch:通常通过throw语句捕获一个异常7、char:用来声明字符变量8、class:创建新的数据类型
分类:编程语言   时间:2020-07-24 13:29:53    阅读次数:92
Java中的锁原理、锁优化、CAS、AQS详解
1、为什么要用锁? 锁-是为了解决并发操作引起的脏读、数据不一致的问题。 2、锁实现的基本原理 2.1、volatile Java编程语言允许线程访问共享变量, 为了确保共享变量能被准确和一致地更新,线程应该确保通过排他锁单独获得这个变量。Java语言提供了volatile,在某些情况下比锁要更加方 ...
分类:编程语言   时间:2020-07-24 09:33:02    阅读次数:63
redis常用命令
1.设置过期Key 的 maxmemory-policy 六种方式 redis 中的默认的过期策略是volatile-lru 。设置方式 config set maxmemory-policy volatile-lru maxmemory-policy 六种方式: volatile-lru:只对设置 ...
分类:其他好文   时间:2020-07-15 12:49:58    阅读次数:55
【JVM】JMM导致的问题和解决手段
思路: cpu多级缓存 - 伪共享 解决一致性 缓存锁MESI + 总线锁 缓存行填充 cpu指令乱序 演示demo 为什么乱序 - 好处 因为cpu比内存块太多,为了充分压榨cpu cpu内存屏障阻止乱序 sfence&lfence&mfence volatile实现 字节码层面 在access ...
分类:其他好文   时间:2020-07-15 01:02:42    阅读次数:97
1981条   上一页 1 ... 5 6 7 8 9 ... 199 下一页
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!