国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

線程的介紹

2019-11-14 21:51:07
字體:
來源:轉載
供稿:網友
線程的介紹

多進程:在操作系統中能(同時)運行多個任務(程序)

多線程:在同一應用程序中有多個順序流(同時)執行

線程(thread)的執行過程

首先生成線程(New),然后進入就緒狀態(Runable),和其他線程一起搶占cpu執行的時間。搶到cpu執行的時間后,進入運行狀態(Running),在運行過程中cpu執行的時間可能會被其他線程搶占了,該線程則又進入就緒狀態,等待下一次搶占cpu執行的時間。線程在運行過程中可能會遇到阻塞事件,解除阻塞狀態后則又進入就緒狀態。線程代碼運行完畢后進入死亡狀態(Dead)

創建線程的方法:

① 定義一個線程類,繼承Thread類并重寫其中的run()方法,run()方法稱為線程體。由于java只支持單繼承,用這種方法定義的類不能再繼承其他類。

class FirstThread extends Thread{public void run(){for(int i = 0;i < 100;i++){System.out.
class Test{public static void main(String args[]){//生成線程類的對象FirstThread ft = new FirstThread();//啟動線程,進入就緒狀態,與main線程搶占cpu//ft.run();不能這樣寫!ft.start();//main線程for(int i =0;i < 100;i++){System.out.println("main-->" + i);}//兩個for循環運行在不同的線程當中}}

一旦運行Test類,在程序中存在三個線程:main線程,ft線程,垃圾回收線程。main和ft線程交替運行。多線程運行的結果沒有規律,每次結果不同

②定義一個實現接口Runnable的類作為線程的目標對象,在初始化一個Thread類或者Thread子類的線程對象時,把目標對象傳遞給線程實例,由該目標對象提供線程體。

//定義用于實現接口Runnable的類class RunnableImp implements Runnable{//復寫Runnable唯一的方法runpublic void run(){for(int i = 0;i < 10; i++){System.out.println("Runnable-->" + i);}}}
class Test{public static void main(String args[]){//生成RunnableImp的對象RunnableImp ri = new RunnableImp(); //ri代表線程體//將ri傳入,生成Thread對象Thread t = new Thread(ri); //t代表一個線程//調用Thread的start方法t.start();}}


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 松江区| 彭水| 安福县| 阳新县| 观塘区| 右玉县| 皋兰县| 广东省| 普宁市| 长丰县| 辛集市| 西乌| 三门峡市| 洪湖市| 枣阳市| 雷山县| 昌平区| 延川县| 若尔盖县| 辽宁省| 邳州市| 孝感市| 洪江市| 中阳县| 甘南县| 中宁县| 镇沅| 郧西县| 思南县| 常熟市| 尼玛县| 铜陵市| 虞城县| 潮州市| 石屏县| 金寨县| 齐齐哈尔市| 曲靖市| 岫岩| 特克斯县| 宜城市|