永发信息网

为什么线程新建后,先调用run,再调用start,不报错,start也不执行

答案:2  悬赏:60  手机版
解决时间 2021-02-21 16:20
package test;

public class BN extends Thread{
private int i;
@Override
public void run() {
for(;i<100;i++){
System.out.println(this.getName()+" "+i);
}
}

public static void main(String[] args) {
for(int i=0;i<100;i++){
System.out.println(Thread.currentThread().getName()+" "+i);
if(i==20){
BN s=new BN();
s.run();
s.start();
}
}
}

}
最佳答案
个人理解,调用start就是启动一个线程,线程会自动执行run函数。直接调用run,就是用本线程去执行run里面的内容,run里循环结束,然后返回, 然后start(),然后线程启动,由于循环变量i已经100了,线程里,循环直接结束。

刚测试了,就是这样。run里面,改成这样:Thread.currentThread().getName()来看。
全部回答
可以私聊我~
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
食侠客烤肉拌饭,小孩子会喜欢吃么?
雪白血红写的真实吗?内容靠近历史的真相吗?
谁知道大众朗逸车是国产?还是合资?
张阿姨奶茶(鑫苑店)地址在哪,我要去那里办事
清代学者陶煦说:“金宝庐舍,转瞬灰烬,惟有
顶楼自来水很小怎么办 20分
申请国产化妆品批号要求和条件
中国移动海州洪门农贸市场指定专营店怎么去啊
下岗职工个人缴纳养老保险有什么优惠
前两个数的平均数是25 后两个数的平均数是27
广州市番禺区个体劳动者协会新造分会地址在什
三星和海尔五十五英寸液晶电视那个比较好
提问:肺部结节影和阴影是一回事吗
我15岁男生,可是有了不少胡须,感觉死难看
在使用阶段,在短期效应组合下并考虑长期效应
推荐资讯
挂在墙上的画叫什么
苗鑫幼儿园在什么地方啊,我要过去处理事情
GBS龙虾机场店这个地址在什么地方,我要处理
在赋值语句中,经常省略的保留字(关键字)是
界沟村村地址有知道的么?有点事想过去
拜文殊菩萨应该念什么/拜文殊菩萨应该念什么
请问廊坊地区的新农合的报销比例是多少
我是退伍军人,97年安置,但是6年没有上岗,
阴沉木金丝楠手串有樟脑味吗
正方体ABCD—A1B1C1D1的棱长为1,P是面对角线B
坐几路去济南市工人新村北村西街4号交水费
什么事都想和女朋友呆在一起
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?