睫晉姬

          Java多線程支持如何才能解決接口問題

            Java多線程支持需要我們不斷的進行相關問題的解決,下面我們就來看看在接口問題上的相關問題解決方案,這樣才能更好的進行不斷的干洗機創新和學習。希望大家有所了解。

            Java多線程支持,所有實現Runnable接口的類都可被啟動一個新線程,新線程會執行該實例的run()方法,當run()方法執行完畢后,線程就結束了。一旦一個線程執行完畢,這個實例就不能再重新啟動,只能重新生成一個新實例,再啟動一個新線程。

            Thread類是實現了Runnable接口的一個實例,它代表一個線程的實例,并且,啟動線程的唯一方法就是通過Thread類的start()實例方法:

            1.Thread t = new Thread();

            2.t.start();

            start()方法是一個native方法,它將啟動一個新線程,并執行run()方法。Thread類默認的run()方法什么也不做就退出了。注意:直接調用run()方法并不會啟動一個新線程,它和調用一個普通的java多線程支持方法沒有什么區別。

            因此,有兩個方法可以實現自己的線程:

            方法1:自己的類extend Thread,并復寫run()方法,就可以啟動新線程并執行自己定義的run()方法。例如:

            3.public class MyThread extends Thread {

            4.public run() {

            5.System.out.println("MyThread.run()");

            6.}

            7.}

            在合適的地方啟動線程:new MyThread().start();

            方法2:如果自己的類已經extends另一個類,就無法直接extends Thread,此時,必須實現一個Runnable接口:

            8.public class MyThread extends OtherClass implements Runnable {

            9.public run() {

            10.System.out.println("MyThread.run()");

            11.}

            12.}

            為了啟動MyThread,需要首先實例化一個Thread,并傳入自己的MyThread實例:

            13.MyThread myt = new MyThread();

            14.Thread t = new Thread(myt);

            15.t.start();

            事實上,當傳入一個Runnable target參數給Thread后,Thread的run()方法就會調用target.run(),參考JDK源代碼:

            16.public void run() {

            17.if (target != null) {

            18.target.run();

            19.}

            20.}

            Java多線程支持還有一些Name, ThreadGroup, isDaemon等設置,由于和線程設計模式關聯很少,這里就不多說了。

          posted on 2010-07-29 15:59 睫晉姬 閱讀(308) 評論(0)  編輯  收藏


          只有注冊用戶登錄后才能發表評論。


          網站導航:
           
          主站蜘蛛池模板: 旺苍县| 石城县| 纳雍县| 昌图县| 兰西县| 德阳市| 邢台县| 东乡族自治县| 青龙| 科技| 东乌珠穆沁旗| 阜宁县| 安远县| 新巴尔虎右旗| 安岳县| 商城县| 南通市| 廊坊市| 云龙县| 望谟县| 彭泽县| 清徐县| 西和县| 大冶市| 襄垣县| 营山县| 安庆市| 沾益县| 乌审旗| 长垣县| 磐安县| 溆浦县| 和平区| 绵阳市| 玛沁县| 翁牛特旗| 广丰县| 平度市| 南康市| 宣城市| 青冈县|