繁体   English   中英

Runnable和Thread对象的打印顺序

[英]Print Order for Runnable and Thread object

它先打印出“主线程”,然后再打印出“子线程”。 为什么不首先使用“子线程”? 谁能解释一下? 谢谢。

public static void main(String[] args) {
    Thread t = new Thread(new Runnable() {
        public void run() {
            for (int i = 0; i < 10; i++) {
                System.out.println("child thread");
            }
        }
    });

    t.start();

    for (int i = 0; i < 10; i++) {
        System.out.println("main thread");
    }
}

让我解释一下您的代码。

Thread t = new Thread(new Runnable() {
    public void run() {
        for (int i = 0; i < 10; i++) {
            System.out.println("child thread");
        }
    }
});

在这一部分中,您将定义一个线程。 这只是一个定义,直到t.start()都不会发生。 当程序到达t.start()将运行另一个线程,并且应用程序的主线程将继续。 大概在线程启动之前,您的主线程将打印多个“主线程”,并且当您的线程到达System.out.println("child thread"); 您会看到两种打印的混合。 有关Java线程的更多信息,请访问此处

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM