最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

JAVA多線(xiàn)程Thread和Runnable的實(shí)現(xiàn)

 更新時(shí)間:2013年03月17日 12:11:01   作者:  
java中實(shí)現(xiàn)多線(xiàn)程有兩種方法:一種是繼承Thread類(lèi),另一種是實(shí)現(xiàn)Runnable接口。

java中只允許單一繼承,但允許實(shí)現(xiàn)多個(gè)接口,因此第二種方法更靈活。

復(fù)制代碼 代碼如下:

/**
     * 運(yùn)行繼承java.lang.Thread類(lèi)定義的線(xiàn)程
     */
    public void startOne() {
        // 創(chuàng)建實(shí)例
        OneThread oneThread = new OneThread();
        // 啟動(dòng)線(xiàn)程ThreadA
        oneThread.startThreadA();
        try {
            // 設(shè)置線(xiàn)程休眠1秒
            Thread.sleep(1000);
        } catch (InterruptedException e) {
            e.printStackTrace();
        }
        // 停止線(xiàn)程,此處為什么不用stop()方法,因?yàn)樵摲椒ㄒ呀?jīng)廢棄,但可以用在死鎖。
        oneThread.stopThreadA();
    }

復(fù)制代碼 代碼如下:

/**
     * 運(yùn)行實(shí)現(xiàn)Runnable接口定義的線(xiàn)程
     */
    public void startTwo() {
        // 創(chuàng)建實(shí)例
        Runnable runnable = new TwoThread();
        // 將實(shí)例放入到線(xiàn)程中
        Thread threadB = new Thread(runnable);
        // 啟動(dòng)線(xiàn)程
        threadB.start();
    }

復(fù)制代碼 代碼如下:

// 繼承Thread類(lèi)定義線(xiàn)程
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類(lèi)定義線(xiàn)程程序體......" + i++);
                Thread.sleep(200);
            }
        } catch (InterruptedException e) {
            e.printStackTrace();
        }
    }
    public void startThreadA() {
        System.out.println("啟動(dòng)繼承Thread類(lèi)定義線(xiàn)程");
        this.start();
    }
    public void stopThreadA() {
        System.out.println("關(guān)閉繼承Thread類(lèi)定義線(xiàn)程");
        this.running = false;
    }
}

復(fù)制代碼 代碼如下:

// 實(shí)現(xiàn)Runnable接口定義線(xiàn)程
class TwoThread implements Runnable {
    private Date runDate;

    public void run() {
        System.out.println("實(shí)現(xiàn)Runnable接口定義線(xiàn)程程序體......");
        this.runDate = new Date();
        System.out.println("線(xiàn)程啟動(dòng)時(shí)間......" + runDate);
    }

復(fù)制代碼 代碼如下:

public static void main(String[] args) {
        // 實(shí)例化對(duì)象
        ThreadStartAndStop threadStartAndStop = new ThreadStartAndStop();
        threadStartAndStop.startOne();
        threadStartAndStop.startTwo();
    }

 啟動(dòng)繼承Thread類(lèi)定義線(xiàn)程
繼承Thread類(lèi)定義線(xiàn)程程序體......0
繼承Thread類(lèi)定義線(xiàn)程程序體......1
繼承Thread類(lèi)定義線(xiàn)程程序體......2
繼承Thread類(lèi)定義線(xiàn)程程序體......3
繼承Thread類(lèi)定義線(xiàn)程程序體......4
關(guān)閉繼承Thread類(lèi)定義線(xiàn)程
實(shí)現(xiàn)Runnable接口定義線(xiàn)程程序體......
線(xiàn)程啟動(dòng)時(shí)間......Fri Mar 15 12:56:57 CST 2013

相關(guān)文章

最新評(píng)論

隆子县| 林口县| 北票市| 兴城市| 嘉祥县| 东光县| 安宁市| 屏南县| 南丰县| 太原市| 前郭尔| 贞丰县| 靖远县| 密山市| 合水县| 洪泽县| 本溪| 永济市| 上饶市| 宁乡县| 南岸区| 宿迁市| 玛多县| 达拉特旗| 景泰县| 奇台县| 玛多县| 永兴县| 白玉县| 册亨县| 龙海市| 鱼台县| 丰宁| 芷江| 沾化县| 汪清县| 鲜城| 景洪市| 仙桃市| 通州市| 延庆县|