[英]java threads and multithreading:How to synchronize threads
我正在为 java 做我的大学作业,其中包括一个使用两个线程查找 n 数字的总和和乘积的程序。我编写了以下代码,但是线程相互重叠,即两个线程的代码正在同时执行。请有人帮我重写代码,以便只有一个线程完成执行后,另一个线程可以启动。提前致谢
import java.util.Scanner;
class ThreadSum extends Thread {
public void run() {
int n, sum = 0, num;
Scanner sc = new Scanner(System.in);
System.out.println("Enter no of values");
n = sc.nextInt();
System.out.println("Enter numbers");
for (int i = 0; i < n; i++) {
num = sc.nextInt();
sum = sum + num;
}
System.out.println("The sum is:" + sum);
}
}
class ThreadPro extends Thread {
public void run() {
int n, pro = 1, num;
Scanner sc = new Scanner(System.in);
System.out.println("Enter no of values");
n = sc.nextInt();
System.out.println("Enter numbers");
for (int i = 0; i < n; i++) {
num = sc.nextInt();
pro = pro * num;
}
System.out.println("The product is:" + pro);
}
}
class pro {
public static void main(String args[]) {
ThreadSum ts = new ThreadSum();
ts.start();
ThreadPro tp = new ThreadPro();
tp.start();
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.