gpt4 book ai didi

java - 同步新的读取和内存屏障

转载 作者:行者123 更新时间:2023-12-03 13:08:01 24 4
gpt4 key购买 nike

我已阅读以下文章http://javaexp.blogspot.com/2007/12/difference-between-volatile-and.html并了解:

In fact synchronized synchronizes the whole of thread memory with "main" memory.



我怀疑是否有以下几点:
public class A {
int count;

public synchronized int methodA() {
return count++;
}

public int methodB() {
return count++;
}
}

是methodA中的线程总是读取最新的count值吗?还是因为methodB不同步而不能保证?

最佳答案

线程可能会得到错误的cout++值,因为这不是多线程编程的正确方法。

考虑这种情况,其中Thread_1和Thread_2都同时调用methodB并获得5say的值,然后都增加该值,因此实际值应为7,但是现在其他线程3由于错误的多阈值将获得值6。

关于java - 同步新的读取和内存屏障,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52792255/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com