我正在尝试创建3个子线程 父线程必须显示1-5个数字, 孩子1必须显示6-10, 孩子2必须显示11-15, 孩子3必须显示15-20 ......
这必须使用父类中的一个for循环和子类中的一个for循环来完成。 C类是父级,D级是子级
public class C {
public static void main(String[] args){
D d = new D();
System.out.println(Thread.currentThread().getName());
Thread child1= new Thread(d);
Thread child2= new Thread(d);
Thread child3= new Thread(d);
child1.start();
child2.start();
child3.start();
for(int i=1; i<=5;i++){
System.out.println("From parent thread: " +i);
}
}
public class D extends Thread{
public void run(){
System.out.println(Thread.currentThread().getName());
}
答案 0 :(得分:0)
Java为并发编程/多线程(MT)问题提供了一个有趣的解决方案。在&#34; java.concurrent&#34;资产,有一种称为锁的特殊类型的对象。因为你的问题有些模糊(可能是家庭作业),我只能给你一个基本的答案。无论如何,&#34;锁定&#34; object提供了线程与彼此通信所需的工具。我还会看一下代表们(MT问题的常见CS解决方案)。
锁定:https://docs.oracle.com/javase/tutorial/essential/concurrency/newlocks.html