龙空技术网

JAVA篇-每天一道面试题-011

救世小郎中 33

前言:

今天朋友们对“java线程start和run的区别”都比较珍视,姐妹们都想要分析一些“java线程start和run的区别”的相关资讯。那么小编也在网上搜集了一些有关“java线程start和run的区别””的相关知识,希望咱们能喜欢,看官们一起来了解一下吧!

Java多线程中start()和run()的区别?

Java的线程是通过java.lang.Thread类来实现的。可以通过创建Thread的实例来创建新的线程。每个线程都是通过某个特定Thread对象所对应的run()方法来完成其操作的,通过run()方法执行线程体。通过start()方法来启动一个线程。

多线程原理:

调用start()后,线程会被放到等待队列,等待cpu调度,并不一定马上开始执行,只是将这个线程置于可执行状态。然后通过JVM,线程Thread会调用run()方法,执行本线程的线程体。先调用start后调用run,这么麻烦,为了不直接调用run?就是为了实现多线程的优点,没这个start不行。

多线程就是分时利用CPU,宏观上让所有线程一起执行 ,也叫并发。

标签: #java线程start和run的区别