1.程序中需要开启两个线程(线程1和线程2)
2.线程1固定5秒钟执行一次
3.线程2固定10秒钟执行一次
4.开启程序如何做到线程1执行完成后再执行线程2并且在之后无论谁先执行都需等待对方执行完成后才可以开始执行
5.求大神给出demo代码 如运行成功立马

关于JAVA 多线程的问题欢迎给demo
- 写回答
- 好问题 0 提建议
- 关注问题
- 邀请回答
-
2条回答 默认 最新
关注
两个线程在执行操作的时候共享同一把锁就可以保证先后顺序了,demo:
public class TestThreadJoin { public static void main(String[] args) { final Object lock = new Object(); Runnable r1 = ()->{ while(true) { // 执行时获取锁 synchronized(lock) { System.out.println("线程1执行。"); } try { Thread.sleep(5000); } catch (InterruptedException e) { // TODO Auto-generated catch block e.printStackTrace(); } } }; Runnable r2 = ()->{ while(true) { // 执行时获取锁 synchronized(lock) { System.out.println("线程2执行。"); } try { Thread.sleep(10000); } catch (InterruptedException e) { // TODO Auto-generated catch block e.printStackTrace(); } } }; new Thread(r1).start(); new Thread(r2).start(); } }
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报