开启两个线程,交替打印1~10,例如:线程1--1,线程2---2,线程1--3这样子的。用IDEA写java,以public class的形式

1个回答
展开全部
摘要 开启两个线程,交替打印1~10,例如:线程1--1,线程2---2,线程1--3这样子的。用IDEA写java,以public class的形式,解答如下:以下是一个Java示例代码,使用两个线程交替打印1到10。请将以下代码粘贴到IDEA中,并将类名更改为您喜欢的名称。```javapublic class ThreadPrintExample { public static void main(String[] args) { Object lock = new Object(); int max = 10; Thread thread1 = new Thread(() -> { for (int i = 1; i <= max; i++) { synchronized (lock) { try { System.out.print(Thread.currentThread().getName() + "--"); System.out.println(i); lock.notifyAll(); lock.wait(); } catch (InterruptedException e) { e.printStackTrace(); } } } }, "Thread-1");
咨询记录 · 回答于2023-08-09
开启两个线程,交替打印1~10,例如:线程1--1,线程2---2,线程1--3这样子的。用IDEA写java,以public class的形式
开启两个线程,交替打印1~10,例如:线程1--1,线程2---2,线程1--3这样子的。用IDEA写java,以public class的形式,解答如下:以下是一个Java示例代码,使用两个线程交替打印1到10。请将以下代码粘贴到IDEA中,并将类名更改为您喜欢的名称。```javapublic class ThreadPrintExample { public static void main(String[] args) { Object lock = new Object(); int max = 10; Thread thread1 = new Thread(() -> { for (int i = 1; i <= max; i++) { synchronized (lock) { try { System.out.print(Thread.currentThread().getName() + "--"); System.out.println(i); lock.notifyAll(); lock.wait(); } catch (InterruptedException e) { e.printStackTrace(); } } } }, "Thread-1");
} }, "Thread-1"); Thread thread2 = new Thread(() -> { for (int i = 2; i <= max; i += 2) { synchronized (lock) { try { System.out.print(Thread.currentThread().getName() + "--"); System.out.println(i); lock.notifyAll(); lock.wait(); } catch (InterruptedException e) { e.printStackTrace(); } } } }, "Thread-2"); thread1.start(); thread2.start(); }}```这个示例代码创建了两个线程(thread1和thread2),分别打印奇数和偶数。线程交替打印的方法是使用synchronized关键字和一个共享对象(lock)。当线程完成打印时,它会调用`lock.notifyAll()`唤醒另一个线程,然后调用`lock.wait()`将自己挂起,等待被唤醒。
重新给我弄个示例
重新给我弄个示例什么意思
public class ThreadPrintExample { public static void main(String[] args) { Object lock = new Object(); int max = 10; Thread thread1 = new Thread(() -> { for (int i = 1; i { for (int i = 2; i <= max; i += 2) { synchronized (lock) { try { System.out.print(Thread.currentThread().getName() + "--"); System.out.println(i); lock.notifyA
lock.notifyAll(); lock.wait(); } catch (InterruptedException e) { e.printStackTrace(); } } } }, "Thread-2"); thread1.start(); thread2.start(); }}
这咋整
这咋整把报错发过来
报错可以复制的呀,你发图片给我我怎么看
下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消