睫晉姬

          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)  編輯  收藏


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


          網站導航:
           
          主站蜘蛛池模板: 金乡县| 高雄县| 阿拉善右旗| 梅州市| 盘锦市| 车致| 穆棱市| 延庆县| 惠水县| 双辽市| 武安市| 定结县| 正阳县| 灵寿县| 景德镇市| 永吉县| 休宁县| 罗定市| 翁牛特旗| 会理县| 连山| 辽阳市| 霍州市| 紫金县| 毕节市| 江口县| 灵川县| 新丰县| 慈利县| 潜江市| 临澧县| 卫辉市| 洞头县| 平定县| 乐亭县| 宜章县| 永年县| 驻马店市| 临漳县| 九江县| 金川县|