java多线程,为什么运行起来还是单线程?下面是代码
发布网友
发布时间:2023-10-21 14:21
我来回答
共3个回答
热心网友
时间:2024-01-15 04:11
其实这个是多线程的 只不过现象不明显而已,在线程启动前,main函数就已经执行完了。
以下是我的测试代码,将主函数加了一个死循环,你看一下结果
package com;
import java.lang.*;
public class Demo {
public static void main(String args[]) {
new TestThread().start();
for (int i = 0; i < 10; i++) {
System.out.println("main 线程在运行");
while(true)
{
}
}
}
}
class TestThread extends Thread {
public void run() {
for (int i = 0; i < 10; i++) {
System.out.println("TestThread 在运行");
}
}
}
结果是:
main 线程在运行
TestThread 在运行
TestThread 在运行
TestThread 在运行
TestThread 在运行
TestThread 在运行
TestThread 在运行
TestThread 在运行
TestThread 在运行
TestThread 在运行
TestThread 在运行追问好吧,谢谢啦
热心网友
时间:2024-01-15 04:11
你在TestThread中加一个构造函数,在里面super一下才行追问能不能给我一个修改后的代码,谢谢啦
热心网友
时间:2024-01-15 04:12
你写了thread的内建class, 没有调用它的run()啊= =追问在多线程里用Start()调用