漫畫 多執行緒經典例子之一視窗售票

2021-08-20 12:34:47 字數 1217 閱讀 7436

public

class

selltickets

}/**

* 採用實現runnable介面的方式實現多執行緒

*/class

ticket

implements

runnable

//車票號

int num = 1;

@override

public

void

run()

// sleep並不釋放同步鎖,此處只是休眠100s,等休眠100s後執行後續**

thread.sleep(100);

system.out.println(thread.currentthread().getname() + " 售出火車票 no." + (num++));

} catch (interruptedexception e) }}

}}

視窗1 等待同步鎖

視窗3 等待同步鎖

視窗2 等待同步鎖

視窗1 持有同步鎖

視窗1 售出火車票 no

.1視窗1 等待同步鎖

視窗2 持有同步鎖

視窗2 售出火車票 no

.2視窗2 等待同步鎖

視窗2 持有同步鎖

視窗2 售出火車票 no

.3視窗2 等待同步鎖

視窗3 持有同步鎖

視窗3 售出火車票 no

.4視窗3 等待同步鎖

視窗2 持有同步鎖

視窗2 售出火車票 no

.5視窗2 等待同步鎖

視窗1 持有同步鎖

視窗1 售出火車票 no

.6視窗1 等待同步鎖

視窗2 持有同步鎖

視窗2 售出火車票 no

.7視窗2 等待同步鎖

視窗3 持有同步鎖

視窗3 售出火車票 no

.8視窗3 等待同步鎖

視窗3 持有同步鎖

視窗3 售出火車票 no

.9視窗3 等待同步鎖

視窗2 持有同步鎖

視窗2 售出火車票 no

.10視窗2 等待同步鎖

視窗2 持有同步鎖

車票已經賣完啦!

視窗1 持有同步鎖

車票已經賣完啦!

視窗3 持有同步鎖

車票已經賣完啦!

漫畫 多執行緒經典例子之一視窗售票

多執行緒經典例子 1.生產與消費 2.多視窗售票 3.龜兔賽跑 4.銀行取款 5.讀者寫者 6.多執行緒交替列印abc 順序列印 具體描述 有a,b,c三個執行緒,a執行緒輸出a,b執行緒輸出b,c執行緒輸出c要求,同時啟動三個執行緒,按順序輸出abc,迴圈10次 7.描述 子執行緒迴圈10次,接著...

多執行緒經典之三口同時售票

package niu.cheng4 三種方法解決同步問題 第一種 多條執行緒使用同一把鎖 物件是任意的 第二種 使用鎖方法 物件是this 第三種 使用位元組碼檔案實現鎖 物件是class檔案 public class test3 package niu.cheng4 public class s...

多執行緒程式設計之一

雖然c 包含了許多創新性特徵,但其中最激動人心的一點卻是它對多執行緒程式設計的內建支援。乙個多執行緒程式包含兩個或更多能夠同時進行的部分。這種程式的每一部分稱為乙個執行緒。1.多執行緒基礎 有兩種截然不同的多工處理 基於程序的和基於執行緒的。理解這兩者間的不同很重要。程序本質上是乙個正在執行的程式。...