多线程【交替打印1-1000】
多线程:交替打印1-1000
package com.xujie.gittext; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; /** * @author 许缘 * @company xxx公司 * @create 2023-02-05 16:04 * 两个线程交替打印1-1000 */ @Data @AllArgsConstructor @NoArgsConstructor public class Demo01 implements Runnable{ private Integer num; private boolean flag; private Object obj; @Override public void run() { synchronized (obj){ while (num<=1000){ if(flag){ flag=false; }else{ try { //挂起 obj.wait(); }catch (Exception e){ } } System.out.println(Thread.currentThread().getName()+"=="+num); //唤醒 obj.notify(); num+=2; } } } public static void main(String[] args) { Object o = new Object(); Demo01 demo01 = new Demo01(1,true,o); Demo01 demo02 = new Demo01(2,false,o); Thread thread = new Thread(demo01); Thread threads = new Thread(demo02); threads.start(); thread.start(); } }
上一篇:
多线程四大经典案例
下一篇:
网络安全实验室1.选择题