首页 热点资讯 义务教育 高等教育 出国留学 考研考公
您的当前位置:首页正文

java start()和run()的区别

2024-07-17 来源:花图问答

1、概念区别

start():产生线程对象后,调用start()方法启动线程,线程处于运行状态RUNNABLE中的Ready就绪状态中,此时线程等待被CPU调度,调度后再执行run()方法,使用start()方法启动线程,真正实现了多线程。

run():run()方法是Thread中一个普通方法,直接用线程对象调用run()方法,会运行在主线程中。因为程序中只有一个主线程,当程序中有两个线程时,直接调用run()方法,程序按照顺序执行,没有实现多线程。

2、实例

public static void main(String[] args) {
    Thread t1 = new Thread(new Runnable() {
        @Override
        public void run() {
            System.out.println(Thread.currentThread().getName());
        }
    },"unstoppbale_t");
    t1.start();
}

以上就是java start()和run()的区别,希望对大家有所帮助。更多Java学习指路:

显示全文