1. 程式人生 > 其它 >java基礎-多執行緒-thread類、runnable介面

java基礎-多執行緒-thread類、runnable介面

願歷盡千帆,歸來仍是少年

多執行緒:thread、runnable廢話不多說,直接上demo

Thread類:

    @ApiOperation(value = "basic執行緒測試-Thread", notes = "basic執行緒測試-Thread")
    @GetMapping(value = "/startThread")
    public Response startThread(){
        // Thread類
        // 新狀態
        BasicThread t1 = new BasicThread("張三");
        BasicThread t2 
= new BasicThread("李四"); // 可執行狀態 t1.start(); t2.start(); return Response.ok(); }
/**
 * 基礎執行緒測試
 *
 * @author hxx
 * @version 1.0
 * @date 2021/7/9 10:29
 */
public class BasicThread extends Thread {

    public static Logger logger = LogManager.getLogger(BasicThread.class
); public BasicThread (String param) { super(param); } public void run() { logger.info("BasicThread start!!!"); // 執行態 for (int i = 0; i < 1000; i++) { System.out.println(this.getName() + ":" + i); } // 死亡態 } }

Runnable介面:

    @ApiOperation(value = "basic執行緒測試-runnable", notes = "basic執行緒測試-runnable")
    @GetMapping(value 
= "/startRunnableThread") public Response startRunnableThread(){ // Runnable介面 BasicRunnable a1 = new BasicRunnable("張三"); BasicRunnable a2 = new BasicRunnable("李四"); // 新狀態 Thread t1 = new Thread(a1); Thread t2 = new Thread(a2); // 可執行狀態 t1.start(); t2.start(); return Response.ok(); }
/**
 * @author hxx
 * @version 1.0
 * @date 2021/7/9 10:48
 */
public class BasicRunnable implements Runnable {

    public static Logger logger = LogManager.getLogger(BasicRunnable.class);

    private String param;

    public BasicRunnable(String param) {
        this.param = param;
    }

    @Override
    public void run() {
        logger.info("BasicRunnable Start!!!");
        // 執行態
        for (int i = 0; i < 1000; i++) {
            System.out.println(param + ":" + i);
        }
        // 死亡態
    }
}