启动一个线程是用run()还是start()? .

如题所述

启动线程肯定要用start()方法。当用start()开始一个线程后,线程就进入就绪状态,使线程所代表的虚拟处理机处于可运行状态,这意味着它可以由JVM调度并执行。这并不意味着线程就会立即运行。当cpu分配给它时间时,才开始执行run()方法(如果有的话)。START()是方法,它调用RUN()方法.而RUN()方法是你必须重写的. run()方法中包含的是线程的主体
温馨提示:答案为网友推荐,仅供参考
第1个回答  2019-10-24

启动一个线程是调用start()方法,使线程所代表的虚拟处理机处于可运行状态,这意味着它可以由JVM 调度并执行,这并不意味着线程就会立即运行。run()方法是线程启动后要进行回调(callback)的方法。

API解释如下:

第2个回答  2020-10-23

用start()方法。

START共享有车生活平台,是一个基于互联网技术便捷的汽车共享平台的品牌,2012年10月,START于新加坡开始筹备运营,2013年10月在中国大陆成功推行START平台,现在已经是国内爱车及酷爱有车生活人群汇聚的共享有车生活平台,更是一个汽车文化分享社区。

在START服务覆盖的全国29个城市里,用户都可以随时开启丰富多彩的有车生活。如果追求性能,可以选择保时捷911、保时捷718、奥迪RS6、奔驰AMG系列,在引擎轰鸣中享受肾上腺素飙升的快感。

用户也可以在特斯拉、大黄蜂、Mustang、MINI、甲壳虫、牧马人等一系列自带无数情怀和故事的车型里,选择自己今天的心情。当然,START也能满足商务会晤需要,除了常见的奥迪A6L、别克GL8、奥德赛之外,还提供百万级宝马混动5系,甚至奔驰AMGS 65 等极致商务座驾  。另外,兰博基尼Gallardo、法拉利California T等车型在超跑俱乐部里随时等待发烧友的开启  。

本回答被网友采纳
第3个回答  推荐于2017-09-19
启动一个线程是调用start()方法,使线程就绪状态,以后可以被调度为运行状态,一个线程必须关联一些具体的执行代码,run()方法是该线程所关联的执行代码。本回答被提问者采纳
第4个回答  2012-11-23
相必你是看到程序中明明只有run()方法,调用时为什么偏偏用一个莫名其妙的start()方法是吧?
其实我开始也一样,简单点说吧,这是线程的特有写法。如果这是个普通程序,调用的就是run();但放在线程上,用start()方法就等于使用run()方法。明白了么?!