91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

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
滨州市| 耿马| 红桥区| 凤庆县| 吉木萨尔县| 吕梁市| 鞍山市| 仁寿县| 宿迁市| 梓潼县| 长武县| 颍上县| 岗巴县| 张北县| 寿光市| 焉耆| 平邑县| 白朗县| 琼中| 清涧县| 盐边县| 娄底市| 来凤县| 杨浦区| 嘉黎县| 长沙市| 宁城县| 绥江县| 六安市| 元谋县| 项城市| 芷江| 汉寿县| 拜泉县| 汶川县| 新泰市| 淳化县| 余姚市| 茌平县| 灌阳县| 汽车|