第九周課程總結&實驗報告(七)
實驗任務詳情:
完成火車站售票程式的模擬。實驗過程:1.實驗**要求:(
1)總票數1000張;(2
)10個視窗同時開始賣票;(3
)賣票過程延時1秒鐘;
(4)不能出現一票多賣或賣出負數號票的情況。
publicclass
test }}
package2.**截圖com.company;
public
class market implements
runnable
public
intgetticket()
public
void
run()
catch
(interruptedexception e)
ticket--;
system.out.println(thread.currentthread().getname() + "賣票成功;" +"餘票:"+ticket);}}}}}

3.實驗結果
總結
程序是程式的一次動態執行過程,它經歷了從**載入、執行到執行完畢的乙個完整過程,這個過程也是程序本身從產生、發展到最終消亡的過程。多執行緒是實現併發機制的一種有效手段。程序和執行緒一樣,都是實現併發的乙個基本單位。
執行緒的主要**是在run方法裡寫的,但是啟動的時候是呼叫thread的start方法啟動。
要想實現多執行緒,必須在主線程中建立新的執行緒物件。任何執行緒一般具有五種狀態,即建立、就緒、執行、阻塞、終止。
在thread類中,可以通過getname()方法取得執行緒的名稱,通過setname()方法設定執行緒的名稱。
執行緒的名稱一般在啟動執行緒前設定,但也允許為已經執行的執行緒設定名稱。允許兩個thread物件有相同的名字,但為了清晰,應該盡量避免這種情況的發生。
另外,如果程式並沒有為執行緒指定名稱,則系統會自動的為執行緒分配-乙個名稱。
在**塊上加上「synchronized"關鍵字的話,則此**塊就稱為同步**塊。**塊格式:
synchronized
(同步物件)
第九周課程總結 實驗報告(七)
實驗任務詳情 完成火車站售票程式的模擬。要求 1 總票數1000張 2 10個視窗同時開始賣票 3 賣票過程延時1秒鐘 4 不能出現一票多賣或賣出負數號票的情況。源 package 實驗七 class mythread implements runnable catch interruptedexc...
第九周課程總結 實驗報告(七)
完成火車站售票程式的模擬。要求 1 總票數1000張 2 10個視窗同時開始賣票 3 賣票過程延時1秒鐘 4 不能出現一票多賣或賣出負數號票的情況。package line class mythread implements runnablecatch interruptedexception e ...
第九周課程總結 實驗報告(七)
thread類是乙個具體的類,該類封裝了執行緒的屬性和行為。thread類的建構函式有多個,比較常用的有如下幾個。1 public thread 這個方法建立了乙個預設的執行緒類物件。2 public thread runnable target 這個方法在上乙個建構函式的基礎上,利用乙個實現了ru...