gpt4 book ai didi

java - 具有同一可运行类的不同对象的多个线程可以重叠

转载 作者:行者123 更新时间:2023-12-01 10:53:28 24 4
gpt4 key购买 nike

每次创建可运行类的新对象并将其传递给 Thread 是否会产生多线程问题。

例如:

class exmpl implements Runnable {
int a = 0;
exmpl(int x) {
a = x;
}
}

public class toRun {
public static void main(String[] args) {
Thread t = new Thread(new exmpl(5));
Thread t1 = new Thread(new exmpl(6));
t.start();
t1.start();
}
}

两个线程会重叠吗? IE。 t 的 a 值总是 5,t1 的 a 值总是 6 吗?

最佳答案

您为 t 线程构造的 exmpl 实例中 a 的值最初设置为5,另一个 exmpl 实例中 a 的值最初设置为 6,但 a 不是 final 变量,并且您没有向我们展示 run() 方法。这两个 a 字段是否会更改取决于 run() 方法对它们执行的操作。

关于java - 具有同一可运行类的不同对象的多个线程可以重叠,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33728729/

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