多執行緒的基本使用例項

2021-06-27 11:32:38 字數 1025 閱讀 9925

/**

* 多執行緒基本使用例項

* 1.第一種實現方法:繼承thread父類,子類中重寫run()方法,方法體中放入任務**,

* 然後new出子類物件,使用start()方法開啟子執行緒,但這種開啟方式的弊端是子類如

* 果繼承了thread類,那麼就無法再繼承其他類,有很大侷限性

* 2.第二種實現方法:物件類實現runnable介面,重寫run()方法,方法體中放入任務代

* 碼,new出thread類物件,構造方法中傳入該任務物件,然後執行start()方法,這

* 種開啟方法的優點是實現了執行緒和資源的解耦,提高了**的靈活性,擴充套件性

* 3.必須注意的是如果任務資源的需要子執行緒共享的,那麼必須開啟執行緒鎖

* 4.引發執行緒安全的情況:存在共享資源,多個執行緒,多個操作共享資源的**

* 5.建議採用第二種執行緒的實現方法,這樣可以將任務執行緒和任務**進行解耦

* 6.多執行緒的採用是更加合理的利用cpu資源,合理的分配cpu效能

* 7.執行緒狀態:被建立,被執行,阻塞,停止,sleep,wait(此方法必須主動進行喚醒)

* */

public class multiplethread }

/** *定義猴子類,繼承thread類,定義吃桃子方法

*/class monkey extends thread catch (interruptedexception e)

eatpeach();}}

}} //定義猴子吃桃子的方法,每次吃乙隻桃子

public void eatpeach()

}/**

*定義猴子類,實現runnable介面,定義吃桃子方法

*/class monkey2 implements runnable

@override

public void run() catch (interruptedexception e)

eatpeach();}}

}}}

多執行緒使用例項

ptn多執行緒使用例項 在ptn專案中由於網管系統抓取的tunnel資料量較大,每條tunnel都需要做相對於的業務處理,傳統的for迴圈方式中每乙個tunnel去依次執行,效率很慢 現將大的tunnerl list拆分為n個list 每個list都是乙個執行緒,提高效率 詳情如下 jdk 自帶執行...

多執行緒例項

include include include include define max 10 pthread t thread 2 pthread mutex t mut int number 0,i void thread1 printf thread1 主函式在等我完成任務嗎?n pthread ...

多執行緒例項

正常的情況下,執行緒在執行時多個執行緒之間執行任務的時機是無序的。可以通過改造 的方式使它們執行具有有序性。public class mythread extends thread override public void run else catch interruptedexception e ...