睫晉姬

          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 睫晉姬 閱讀(307) 評論(0)  編輯  收藏


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


          網站導航:
           
          主站蜘蛛池模板: 孙吴县| 屏山县| 白玉县| 盘山县| 全南县| 安泽县| 武冈市| 图木舒克市| 阿拉善左旗| 杂多县| 上高县| 峡江县| 璧山县| 汉阴县| 贵德县| 张家川| 景东| 定西市| 镇沅| 辽宁省| 社会| 台东县| 仁怀市| 黎川县| 西丰县| 阳泉市| 阿瓦提县| 鹤山市| 衡水市| 盈江县| 新丰县| 方正县| 瓮安县| 巩义市| 共和县| 葫芦岛市| 商丘市| 碌曲县| 彩票| 商都县| 濮阳市|