问题描述
- 线程问题,请问这样执行会有几个线程
-
public static void main(String[] args) { // TODO Auto-generated method stub /* * Store storage = new Store(); Thread consumer = new Thread(new Coumser(storage)); consumer.setName("消费者"); Thread producer = new Thread(new Prodcter(storage)); producer.setName("生产者"); * consumer.start(); producer.start(); */ new Thread(new Runnable() { public void run() { while (true) { int i = 0; System.out.println(Math.random()); System.out.println(++i); System.out.println(Thread.currentThread().getName()); } } }).start(); }
执行的话会生产几个线程
解决方案
2个,main函数本身就是一个主线程;而你里面有new start了一个子线程,但是由于你的子线程的run方法是一个无限循环——死循环,所以并不能退出,并不建议使用这样的代码。
解决方案二:
消费者一个,,生产者一个,,加一个匿名的线程,再加一个主线程,总共4个
解决方案三:
关于struts 1 中的线程问题
线程中断问题详解
解决方案四:
大概4个线程,你这个是C语言吗,还是C++?
解决方案五:
main线程执行完start就退出啦,刚刚start的线程还处于就绪状态,有可能与main同时运行一会,也有可能在main退出后再执行。
解决方案六:
main线程执行完start就退出啦,刚刚start的线程还处于就绪状态,有可能与main同时运行一会,也有可能在main退出后再执行。
解决方案七:
从你的代码来看,只有两个线程,因为你最上面的代码注释掉了,后面就new Thread了一个匿名线程,加上main线程,就两个。
解决方案八:
2个,一个主线程,一个new出来的
解决方案九:
两个线程 主线程 和子线程
时间: 2024-12-07 12:42:04