package com.test.thread.test; public class ThreadTest { public static final Object lock = new Object(); static class A implements Runnable { public void run() { for (int i = 1; i <= 100; i++) { synchronized (lock) { if (i % 2 == 0) { System.out.println(i); } else { try { lock.wait(); } catch (InterruptedException e) { e.printStackTrace(); } } lock.notify(); } } } } static class B implements Runnable { public void run() { for (int i = 1; i <= 100; i++) { synchronized (lock) { if (i % 2 == 1) { System.out.println(i); } else { try { lock.wait(); } catch (InterruptedException e) { e.printStackTrace(); } } lock.notify(); } } } } public static void main(String[] args) { new Thread(new A()) { }.start(); new Thread(new B()) { }.start(); } }
java两个线程交替打印1-100之间的数字
最新推荐文章于 2025-06-09 10:05:05 发布