亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

Java cmd怎樣運行多線程

小樊
81
2024-11-24 05:52:44
欄目: 編程語言

在Java中,可以使用java.lang.Thread類或者java.util.concurrent包中的ExecutorServiceFuture等接口來創建和管理多線程。這里我將向您展示如何使用這兩種方法在命令行(cmd)上運行多線程Java程序。

方法1:使用Thread類

  1. 首先,創建一個名為MyThread.java的文件,然后編寫以下代碼:
public class MyThread extends Thread {
    public void run() {
        for (int i = 0; i < 5; i++) {
            System.out.println(Thread.currentThread().getName() + ":" + i);
        }
    }
}
  1. 編譯Java文件:
javac MyThread.java
  1. 在命令行中,使用-cp選項指定類路徑,然后運行編譯后的MyThread類:
java -cp . MyThread MyThread1 MyThread2 MyThread3

這將創建并啟動四個線程,每個線程打印出它的名稱和一個循環計數器。

方法2:使用ExecutorService和Future

  1. 創建一個名為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);
        }
    }
}
  1. 編譯Java文件:
javac MyThreadPool.java
  1. 在命令行中,使用-cp選項指定類路徑,然后運行編譯后的MyThreadPool類:
java -cp . MyThreadPool

這將創建一個固定大小的線程池,提交四個任務到線程池,每個任務打印出它的任務編號和一個循環計數器。完成后,線程池將關閉。

0
沙河市| 神农架林区| 呈贡县| 东乡族自治县| 门源| 阿克苏市| 吉安市| 宜丰县| 韶关市| 凌海市| 班玛县| 金溪县| 武威市| 揭阳市| 桓仁| 鸡西市| 淳化县| 滦南县| 临泉县| 焦作市| 潮安县| 石渠县| 盈江县| 大城县| 沙河市| 视频| 太仆寺旗| 丰台区| 宽甸| 静宁县| 堆龙德庆县| 区。| 思南县| 荆州市| 安平县| 嘉义市| 襄樊市| 车险| 阳江市| 天气| 金寨县|