博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
java 多线程 原子性
阅读量:4660 次
发布时间:2019-06-09

本文共 341 字,大约阅读时间需要 1 分钟。

原子性

原子性:原子操作是不能被线程调度机制中断的操作,一旦操作开始,那么它就一定可以在可能发生的“上下文切换”之前(切换到其他线程执行)执行完毕。

依赖原子性是很棘手且很危险的,除非你是并发专家,否则不建议使用原子性来代替同步。

原子性应用于除long和double之外的所有基本类型之上的“简单操作”。但可以通过volatile关键字来使long和double的简单操作获得原子性。

 

long和double都是16为,分为分为高八位和低八位,线程有可能在操作时,不能完整读取,所以不具有原子性。不过,现在大多都jvm都将long和double做了原子性处理。要是不同情况来决定。

 

转载于:https://www.cnblogs.com/oskyhg/p/6965445.html

你可能感兴趣的文章
POJ 3613 Cow Relays
查看>>
BZOJ3532 SDOI2014 LIS
查看>>
ospf v3 实验
查看>>
Linux经久不衰的应用程序
查看>>
举例说明如何实现一个泛型类
查看>>
第三章 经典算法
查看>>
ThreadLocal用法详解和原理(转)
查看>>
Qt调试中遇到中文注释导致的调试异常
查看>>
面试编程题拾遗(06) --- 打印n对括号的全部有效组合
查看>>
Java环境搭建指南
查看>>
POJ 3304 Segments(判断直线与线段是否相交)
查看>>
编程求一个后缀表达式的值
查看>>
c#程序框架-基于视图的数据列表查询
查看>>
转,AppDomain与Assembly的动态加载与卸载
查看>>
Lucene4.6 把时间信息写入倒排索引的Offset偏移量中,并实现按时间位置查询
查看>>
“关于挨踢(通“IT”)的事儿”
查看>>
[Python设计模式] 第15章 如何兼容各种DB——抽象工厂模式
查看>>
给传统行业大佬讲移动互联网,怎么个思路比较好?
查看>>
CF掉分日记 6.6 6.8
查看>>
Apache Spark源码走读之14 -- Graphx实现剖析
查看>>