小编Tob*_*ias的帖子

在Clojure stm的竞争条件?

您好我正在阅读本书的快乐,并且在关于STM的部分中,他们有2个交易的图像,其中A最初从参考中检索与B相同的值,然后事务A和B都进行计算但是A完成首先,提交变量,因此B必须重试.

但我正在思考的是,B是否会重复A的提交.如果是这样的话那么如果相反呢?那么最终的价值将明显不同.

这似乎很容易被忽视,我相信我完全不理解它.请帮我解开这个.

clojure race-condition stm

3
推荐指数
1
解决办法
211
查看次数

java并发问题

为什么n有时等于1或2

private static int n = 0;

private static Thread t1, t2;

private synchronized static void increment() {
    n++;
}

public static void main(String[] args) {
    t1 = new Thread(new Runnable() {
        public void run() {
            increment();
        }
    });

    t2 = new Thread(new Runnable() {
        public void run() {
            t1.start();
            increment();
        }
    });

    t2.start();

    try {
        t2.join();
    } catch(InterruptedException e) {
        e.printStackTrace();
    }

    System.out.println(n);
}
Run Code Online (Sandbox Code Playgroud)

增量方法不应该只允许一个线程在任何给定时刻执行它吗?

也许它是调试器,似乎当我正常运行时我总是得到2但是当我调试代码时它有时会返回1.

java concurrency

2
推荐指数
1
解决办法
108
查看次数

标签 统计

clojure ×1

concurrency ×1

java ×1

race-condition ×1

stm ×1