求Java中同时启动2000个线程的源码
3个回答
展开全部
用一个循环就可以了。
看一下下边的。
----------------------------------------------------------------
public class Main {
public static void main(String[] args) throws Exception {
for (int i = 0; i <= 2000; i++) {
new MyThread(i).start();
}
}
}
class MyThread extends Thread {
String name = null;
public MyThread(int index) {
name = String.format("%04d", index);
}
public void run() {
int index = 0;
while (true) {
System.out.println("this is " + name + ",run->" + (index++));
try {
sleep(10);
} catch (Exception e) {
}
}
}
}
看一下下边的。
----------------------------------------------------------------
public class Main {
public static void main(String[] args) throws Exception {
for (int i = 0; i <= 2000; i++) {
new MyThread(i).start();
}
}
}
class MyThread extends Thread {
String name = null;
public MyThread(int index) {
name = String.format("%04d", index);
}
public void run() {
int index = 0;
while (true) {
System.out.println("this is " + name + ",run->" + (index++));
try {
sleep(10);
} catch (Exception e) {
}
}
}
}
追问
通过CountDownLatch类可以,但是我忘了怎么写了
追答
你是想说,让这些个句柄同时调用?
这在一个程序里不行。
线程组和组程池也是对线程的一个管理和调度,没有同时启动的方法。
线程也是有先后顺序的。不会是真正的同时运行
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询