控制两个线程交替打印

Posted song.yan

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了控制两个线程交替打印相关的知识,希望对你有一定的参考价值。

package datatype;

public class demo {
    static final Object object = new Object();
    public static void main(String[] args) {
        Thread t1 = new Thread(new Runnable() {
            @Override
            public void run() {
                for (int i = 1; i < 51; i++) {
                    System.out.print(i);
                    if (i % 2 == 0) {
                        synchronized (object) {
                            object.notify();
                            try {
                                object.wait();
                            } catch (InterruptedException e) {
                                e.printStackTrace();
                            }
                        }

                    }
                }
            }
        });
        Thread t2 = new Thread(new Runnable() {
            @Override
            public void run() {
                char word = \'A\';
                for (int i = 0; i < 27; i++) {
                    System.out.print(word);
                    word++;
                    synchronized (object) {
                        object.notify();
                        try {
                            object.wait();
                        } catch (InterruptedException e) {
                            e.printStackTrace();
                        }
                    }
                }
            }
        });
        t2.start();
        t1.start();
    }
}

 

以上是关于控制两个线程交替打印的主要内容,如果未能解决你的问题,请参考以下文章

Java两个线程实现交替运行-以交替打印奇偶数为例

经典面试题——两个线程交替打印奇数和偶数

面试题:用程序实现两个线程交替打印 0~100 的奇偶数

两个线程交替打印1-99

多线程面试题之三线程按顺序交替打印ABC的方法

实现两个线程从0-100交替打印