相关疑难解决方法(0)

HashMap和Hashtable之间的区别?

Java中的a HashMap和a有什么区别Hashtable

哪个非线程应用程序更有效?

java collections hashtable hashmap

3604
推荐指数
32
解决办法
149万
查看次数

跨对象的Java同步

我正在努力确保我理解java中synchronized的性能影响.我有几个简单的类:

public class ClassOne {

    private ClassTwo classTwo = new ClassTwo();

    public synchronized void setClassTwo(int val1, int val2) {
        classTwo.setVal(val1);
        classTwo.setVal2(val2);
    }

    public static void main(String[] args) {
        ClassOne classOne = new ClassOne();
        classOne.setClassTwo(10, 100);
    }

}

public class ClassTwo {

    private int val;
    private int val2;

    public synchronized void setVal(int val) {
        this.val = val;
    }

    public synchronized void setVal2(int val2) {
        this.val2 = val2;
    }

}
Run Code Online (Sandbox Code Playgroud)

因此,正如您在前面的示例中所看到的,我正在同步ClassOne.setClassTwo和ClassTwo.setVal以及ClassTwo.setVal2.我想知道的是,如果我在ClassTwo.setVal和ClassTwo.setVal2上删除同步,性能是否完全相同,如下所示:

public class ClassTwo {

    private int val;
    private int val2;

    public …
Run Code Online (Sandbox Code Playgroud)

java synchronization

6
推荐指数
1
解决办法
159
查看次数

标签 统计

java ×2

collections ×1

hashmap ×1

hashtable ×1

synchronization ×1