首页 > 后端开发 > 正文

在java中,如何让一个线程在其他线程执行完成之后再执行

2024-03-26 11:34:09 | 我爱编程网

在java中,如何让一个线程在其他线程执行完成之后再执行相关内容,小编在这里做了整理,希望能对大家有所帮助,关于在java中,如何让一个线程在其他线程执行完成之后再执行信息,一起来了解一下吧!

本文目录一览:

在java中,如何让一个线程在其他线程执行完成之后再执行

在java中,如何让一个线程在其他线程执行完成之后再执行

可以用join()方法,楼主试试下面的例子,看看是不是你想要的:

public static class T extends Thread{

private final String name;

public T(String name){

this.name = name;

}

@Override

public void run() {

super.run();

for(int i=0; i<1000; i++)

System.err.println(name + "\t" + i);

}

}

public static void main(String[] args) throws Exception{

T t = new T("t1");

T t2 = new T("t2");

t.start();

t.join();

t2.start();

}

在java中,如何让一个线程在其他线程执行完成之后再执行

java里面在主线程产生多个子线程,怎么让这些子线程同时运行,运行完以后再继续执行主线程??

package thread;

public class TestJoin {

/**

* @param args

*/

public static void main(String[] args) {

// TODO Auto-generated method stub

ThreJo t= new ThreJo("a");

t.start();

ThreJo t2= new ThreJo("b");

t2.start();

try {

t.join();

t2.join();

} catch (InterruptedException e) {

// TODO Auto-generated catch block

System.out.println("出错了");

return ;

}

for(int i =0;i<50;i++){

System.out.println("调用主线程第"+i+"次");

}我爱编程网

}

}

class ThreJo extends Thread{

ThreJo(String s){

super(s);

}

public void run(){

for(int i =0;i<50;i++){

System.out.println("继承Thread"+i+"次,我是"+getName());

}

}

}

在java中,如何让一个线程在其他线程执行完成之后再执行

java 一个类调用另一个类的方法 怎样控制另一个类的方法执行完再继续执行本类

我爱编程网(https://www.52biancheng.com)小编还为大家带来java 一个类调用另一个类的方法 怎样控制另一个类的方法执行完再继续执行本类的相关内容。

按照你的代码,最简单但笨拙的解决方案如下:

//method reco

JPasswordFieldDemo JP=new JPasswordFieldDemo();

String reader_id = null;

do{

reader_id=JP.reader_id;

int n1=0;

//后续登陆check逻辑

}while(reader_id!=null);

最好的做法是给登陆窗口中的登陆按钮触发事件时调用后续的登陆查询逻辑

//method reco

//1.实例化登陆窗口对象

JPasswordFieldDemo JP=new JPasswordFieldDemo();//构造是不要立即显示窗体

//2.注册事件

JButton loginBtn=JP.getLoginButton();//简单封装下,当然可以粗糙些,类似 JP.reader_id

//注册一个listener

loginBtn.addActionListener(new ActionListener(){

public void actionPerformed(ActionEvent e){

//后续登陆check逻辑

}

});

//3.显示登陆窗口

JP.setVisible(true);

看了下,你说好像去登陆框里的值有问题,取不到,可以这样封装个方法在类JPasswordFieldDemo

//类JPasswordFieldDemo中定义一个方法

public String getLoginName(){

//用户名控件 nameTextField

return nameTextFiled.getText();

}

//密码控件也可以类似

然后在当前类中recommend中

String reader_id=JP.reader_id 改成

String reader_id=JP.getLoginName();

类似这种

以上就是在java中,如何让一个线程在其他线程执行完成之后再执行全部内容了,了解更多相关信息,关注我爱编程网。更多相关文章关注我爱编程网:www.52biancheng.com

免责声明:文章内容来自网络,如有侵权请及时联系删除。
与“在java中,如何让一个线程在其他线程执行完成之后再执行”相关推荐