Java 将线程结果保存在主变量中 class
Java save thread result in a variable from main class
我有一个通过实现 Runnable 接口创建的线程。我的任务是:线程应该计数(从 0 开始)并将它达到的值保存到一个变量中,该变量是 main class 的一部分。我覆盖了 运行 方法并进行了计数,但是如何将这个值保存到主变量中?只有 getter 才是解决方案?
我的帖子 class:
public class myThread implements Runnable {
private static int count = 0;
private final int length;
public myThread (int length) {
this.length = length;
}
@Override
public void run() {
while (count < this.length) {
increaseValue();
}
}
private void increaseValue() {
synchronized (ThreadFirstExercise.class) {
if (count < this.length) {
this.count++;
}
}
}
}
主要内容:
public class Main {
public static void main(String[] args) {
int result; // this is the variable where I want to save the counting result of my thread
(new Thread(new ThreadFirstExercise(10000))).start();
}
}
您可以使用 Callable
或 returns 或 Future
。
或者您可以在包含整数的 main 方法中使用包装对象。
我有一个通过实现 Runnable 接口创建的线程。我的任务是:线程应该计数(从 0 开始)并将它达到的值保存到一个变量中,该变量是 main class 的一部分。我覆盖了 运行 方法并进行了计数,但是如何将这个值保存到主变量中?只有 getter 才是解决方案? 我的帖子 class:
public class myThread implements Runnable {
private static int count = 0;
private final int length;
public myThread (int length) {
this.length = length;
}
@Override
public void run() {
while (count < this.length) {
increaseValue();
}
}
private void increaseValue() {
synchronized (ThreadFirstExercise.class) {
if (count < this.length) {
this.count++;
}
}
}
}
主要内容:
public class Main {
public static void main(String[] args) {
int result; // this is the variable where I want to save the counting result of my thread
(new Thread(new ThreadFirstExercise(10000))).start();
}
}
您可以使用 Callable
或 returns 或 Future
。
或者您可以在包含整数的 main 方法中使用包装对象。