volatile、static
2024-10-15 05:04:29
谈到 volatile、static 就必须说多线程。
1、一个线程在开始执行的时候,会开启一片自己的工作内存(自己线程私有),同时将主内存中的数据复制到自己 的工作内存,从此读写数据都是自己的工作内存的数据,(个人见解:其中写数据时会同步到主内存,读是读自己的工作内存的数据)
2、成员变量被volatile 修饰后,发生改变:每次读取被修饰的变量都是读取主内存中的变量,这样就实现了多线程下的可见性,相当于多个实例面对一个静态变量。
3、成员变量被static 修饰后,每个实例(不是每个线程,static不是面对线程而是面对实例 )都共享 一个主内存的数据。当多线情况下时,对 该成员的操作依然参照第1、 2 点。
最新文章
- H5 表格标签的其它标签
- 安卓ApiDemos最简单的使用方法
- [Django 2]第一个django应用
- 非对称加密算法--DH
- Java输入一行数据并转存到数组中
- Zlib 在windows上的编译
- mac 下 chrome 语言环境 设置
- Android Service和Thread的关系
- CListCtrl总结.xml
- Android SurfaceView 绘图覆盖刷新及脏矩形刷新方法
- Django中国|Django中文社区——python、django爱好者交流社区
- :after/:before使用技巧
- linux grep 和 sed使用
- Jmeter——HTTP协议的接口压力测试环境搭建
- WordCount 3
- scrapy -->;CrawlSpider 介绍
- ubuntu部署git
- 蒙特卡洛(Monte Carlo)法求定积分
- 猫眼电影爬取(三):requests+pyquery,并将数据存储到mysql数据库
- Nett的Http表头赋值