java多线程,为什么运行起来还是单线程?下面是代码
importjava.lang.*;publicclasstext11{publicstaticvoidmain(Stringargs[]){newTestThread(...
import java.lang.*;
public class text11
{
public static void main(String args[])
{
new TestThread().start();
for(int i=0;i<10;i++)
{
System.out.println("main 线程在运行");
}
}
}
class TestThread extends Thread
{
public void run()
{
for(int i=0;i<10;i++)
{
System.out.println("TestThread 在运行");
}
}
} 展开
public class text11
{
public static void main(String args[])
{
new TestThread().start();
for(int i=0;i<10;i++)
{
System.out.println("main 线程在运行");
}
}
}
class TestThread extends Thread
{
public void run()
{
for(int i=0;i<10;i++)
{
System.out.println("TestThread 在运行");
}
}
} 展开
3个回答
展开全部
其实这个是多线程的 只不过现象不明显而已,在线程启动前,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 在运行
以下是我的测试代码,将主函数加了一个死循环,你看一下结果
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 在运行
追问
好吧,谢谢啦
展开全部
你在TestThread中加一个构造函数,在里面super一下才行
追问
能不能给我一个修改后的代码,谢谢啦
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你写了thread的内建class, 没有调用它的run()啊= =
追问
在多线程里用Start()调用
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |