阅读量:2
在Java中,可以使用java.lang.Thread类或者java.util.concurrent包中的ExecutorService和Future等接口来创建和管理多线程。这里我将向您展示如何使用这两种方法在命令行(cmd)上运行多线程Java程序。
方法1:使用Thread类
- 首先,创建一个名为
MyThread.java的文件,然后编写以下代码:
public class MyThread extends Thread {
public void run() {
for (int i = 0; i < 5; i++) {
System.out.println(Thread.currentThread().getName() + ":" + i);
}
}
}
- 编译Java文件:
javac MyThread.java
- 在命令行中,使用
-cp选项指定类路径,然后运行编译后的MyThread类:
java -cp . MyThread MyThread1 MyThread2 MyThread3
这将创建并启动四个线程,每个线程打印出它的名称和一个循环计数器。
方法2:使用ExecutorService和Future
- 创建一个名为
MyThreadPool.java的文件,然后编写以下代码:
import java.util.concurrent.*;
public class MyThreadPool {
public static void main(String[] args) {
int numberOfThreads = 4;
ExecutorService executorService = Executors.newFixedThreadPool(numberOfThreads);
for (int i = 0; i < numberOfThreads; i++) {
executorService.submit(new MyRunnable(i));
}
executorService.shutdown();
}
}
class MyRunnable implements Runnable {
private int taskNumber;
public MyRunnable(int taskNumber) {
this.taskNumber = taskNumber;
}
@Override
public void run() {
for (int i = 0; i < 5; i++) {
System.out.println("Task " + taskNumber + ":" + i);
}
}
}
- 编译Java文件:
javac MyThreadPool.java
- 在命令行中,使用
-cp选项指定类路径,然后运行编译后的MyThreadPool类:
java -cp . MyThreadPool
这将创建一个固定大小的线程池,提交四个任务到线程池,每个任务打印出它的任务编号和一个循环计数器。完成后,线程池将关闭。
以上就是关于“Java cmd怎样运行多线程”的相关介绍,筋斗云是国内较早的云主机应用的服务商,拥有10余年行业经验,提供丰富的云服务器、租用服务器等相关产品服务。云服务器资源弹性伸缩,主机vCPU、内存性能强悍、超高I/O速度、故障秒级恢复;电子化备案,提交快速,专业团队7×24小时服务支持!
简单好用、高性价比云服务器租用链接:https://www.jindouyun.cn/product/cvm