JAVA 멀티스레드 Thread 및 Runnable 구현

2602 단어 ThreadRunnable
자바에서는 단일 계승만 허용하지만 여러 개의 인터페이스를 허용하기 때문에 두 번째 방법은 더욱 유연하다.

/**
     * java.lang.Thread
     */
    public void startOne() {
        //
        OneThread oneThread = new OneThread();
        // ThreadA
        oneThread.startThreadA();
        try {
            // 1
            Thread.sleep(1000);
        } catch (InterruptedException e) {
            e.printStackTrace();
        }
        // , stop() , , 。
        oneThread.stopThreadA();
    }

/**
     * Runnable
     */
    public void startTwo() {
        //
        Runnable runnable = new TwoThread();
        //
        Thread threadB = new Thread(runnable);
        //
        threadB.start();
    }

// Thread
class OneThread extends Thread {
    private boolean running = false;

    public void start() {
        this.running = true;
        super.start();
    }
    public void run() {
        int i = 0;
        try {
            while (running) {
                System.out.println(" Thread ......" + i++);
                Thread.sleep(200);
            }
        } catch (InterruptedException e) {
            e.printStackTrace();
        }
    }
    public void startThreadA() {
        System.out.println(" Thread ");
        this.start();
    }
    public void stopThreadA() {
        System.out.println(" Thread ");
        this.running = false;
    }
}


// Runnable
class TwoThread implements Runnable {
    private Date runDate;

    public void run() {
        System.out.println(" Runnable ......");
        this.runDate = new Date();
        System.out.println(" ......" + runDate);
    }


public static void main(String[] args) {
        //
        ThreadStartAndStop threadStartAndStop = new ThreadStartAndStop();
        threadStartAndStop.startOne();
        threadStartAndStop.startTwo();
    }
상속 Thread 클래스 정의 스레드 상속 Thread 클래스 정의 스레드 프로그램 시작...0 Thread 클래스 정의 루틴 프로그램 상속...1 Thread 클래스 정의 루틴 프로그램 상속...2 Thread 클래스 정의 루틴 프로그램 상속...3 Thread 클래스 정의 루틴 프로그램 상속...4 상속 Thread 클래스 정의 루틴 닫기 Runnable 인터페이스 정의 루틴 프로그램체...스레드 시작 시간...Fri Mar 15 12:56:57 CST 2013

좋은 웹페이지 즐겨찾기