创建一个对象和i++是否原子性的理解

Posted wanghhonglin

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了创建一个对象和i++是否原子性的理解相关的知识,希望对你有一定的参考价值。

创建一个对象和i++是否原子性的理解

以下是个人猜测,希望大牛可以指正下,万分感谢。希望能让我从深坑拉我一把

一:创建对象是否原子性猜想

1:创建一个对象

2:JVM进行类加载,会把类的所有信息存放到方法区。

3:JVM进行内存分配和初始化,如果发现内存无法分配,那么会出现内存溢出异常。

当出现内存溢出的时候,并不会将类加载的信息进行回滚。个人猜想不是原子性操作。

二:i++是否原子性猜想

1:创建Int i = 5

2:5存放到局部变量表

3:当执行i++的时候,从变量表获取值,执行i++, 当执行完成后再把次进行更新。

4:如果更新的时候出现栈内存不足,那么很多操作将无法回滚。

所以个人猜想不是原子性操作。

以上是关于创建一个对象和i++是否原子性的理解的主要内容,如果未能解决你的问题,请参考以下文章

JAVA的原子性和可见性,线程同步的理解

Golang写时复制是否是原子性的?

Golang写时复制是否是原子性的?

Golang写时复制是否是原子性的?

并发编程三要素:原子性,有序性,可见性

为什么Redis的操作是原子性的,怎么保证原子性的?