您当前的位置:首页 > 计算机 > 编程开发 > Java

9.37. Java 中 start() 方法和 run() 方法的区别

时间:12-14来源:作者:点击数:
城东书院 www.cdsy.xyz

只有调用了 start() 方法,才会表现出多线程的特性,不同线程的 run() 方法里面的代码交替执行。如果只是调用 run() 方法,那么代码还是同步执行的,必须等待一个线程的 run() 方法里面的代码全部执行完毕之后,另外一个线程才可以执行其 run() 方法里面的代码。

在 Java 中,start() 方法用于启动一个新的线程,而 run() 方法是在当前线程中执行的普通方法。如果直接调用 run() 方法,那么该方法将在当前线程中执行,不会创建新的线程。

start() 方法的调用会使 JVM 启动一个新的线程,然后在新的线程中调用 run() 方法。在 start() 方法返回后,线程将开始执行,并且在 run() 方法执行完毕后自动结束。而直接调用 run() 方法则只是一个普通的方法调用,不会启动新的线程,run() 方法执行完毕后仍然在当前线程中。

因此,如果想要在新的线程中执行一段代码,应该使用 start() 方法,而如果只是想在当前线程中执行一段代码,可以直接调用 run() 方法。

城东书院 www.cdsy.xyz
方便获取更多学习、工作、生活信息请关注本站微信公众号城东书院 微信服务号城东书院 微信订阅号
推荐内容
相关内容
栏目更新
栏目热门
本栏推荐