編寫多執行緒應用程式,模擬多個人通過一個山洞:
1、編寫多執行緒應用程式,模擬多個人通過一個山洞:
(1)這個山洞每次只能通過一個人,每個人通過山洞的時間為5秒
(2)隨機生成10個人,同時準備過此山洞,顯示一下每次通過山洞人的姓名
思路:一個山洞(類),10個人(10個執行緒),只有一個人能通過(當一個執行緒通過時沒其他執行緒不能執行這個程式,執行緒鎖),
通過時間5秒,即執行緒sleep 5秒
public class Test02 {
public static void main(String[] args) {
//例項化山洞
Shandong shandong = new Shandong();
//建立10個執行緒
Thread thread1 = new Thread(shandong, "1");
Thread thread2 = new Thread(shandong, "2");
Thread thread3 = new Thread(shandong, "3");
Thread thread4 = new Thread(shandong, "4");
Thread thread5 = new Thread(shandong, "5");
Thread thread6 = new Thread(shandong, "6");
Thread thread7 = new Thread(shandong, "7");
Thread thread8 = new Thread(shandong, "8");
Thread thread9 = new Thread(shandong, "9");
Thread thread10 = new Thread(shandong, "10");
thread1.start();
thread2.start();
thread3.start();
thread4.start();
thread5.start();
thread6.start();
thread7.start();
thread8.start();
thread9.start();
thread10.start();
}
}
//山洞
class Shandong extends Thread{
@Override
public void run() {
//上鎖
synchronized(this){
System.out.println(Thread.currentThread().getName()+"正在通過,請等待5s");
try {
sleep(5000);
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
}
相關文章
- shell模擬“多執行緒”執行緒
- Java:多執行緒模擬多站點售票過程薦Java執行緒
- 請教一個多執行緒編寫的題!執行緒
- Python——程式、執行緒、協程、多程式、多執行緒(個人向)Python執行緒
- 利用多執行緒寫一個賣票程式執行緒
- 多執行緒應用執行緒
- 用VB編寫非同步多執行緒下載程式 (轉)非同步執行緒
- C++ Builder 高手進階 (五)用BCB編寫多執行緒應用程式 (轉)C++UI執行緒
- ObjC 多執行緒簡析(一)-多執行緒簡述和執行緒鎖的基本應用OBJ執行緒
- 多執行緒,多程式執行緒
- 多執行緒應用初探(一)----(概念,安全)執行緒
- 用BCB寫一個最簡單的多執行緒 (轉)執行緒
- pytest(13)-多執行緒、多程式執行用例執行緒
- Java多執行緒-執行緒通訊Java執行緒
- 使用 C++11 編寫 Linux 多執行緒程式C++Linux執行緒
- 使用 C++ 11 編寫 Linux 多執行緒程式C++Linux執行緒
- pytest多程式/多執行緒執行測試用例執行緒
- 多執行緒和多程式模型的選用執行緒模型
- 編寫執行緒安全的JSP應用程式執行緒JS
- 執行緒以及多執行緒,多程式的選擇執行緒
- 使用Python編寫一個多執行緒的12306搶票程式Python執行緒
- 多執行緒學習一(多執行緒基礎)執行緒
- Java多執行緒(一)多執行緒入門篇Java執行緒
- 多執行緒(一)執行緒
- Python 多執行緒多程式Python執行緒
- GCD 多執行緒安全 單寫多讀GC執行緒
- JAVA學習之路(多執行緒)—模擬售票(細解)Java執行緒
- Java多執行緒學習——執行緒通訊Java執行緒
- .NET多執行緒程式設計(1):多工和多執行緒 (轉)執行緒程式設計
- VC編寫多執行緒sql盲注工具.doc執行緒SQL
- 多執行緒和多執行緒同步執行緒
- 多執行緒程式設計總結:一、認識多執行緒本質執行緒程式設計
- Python通過代理多執行緒抓取圖片Python執行緒
- iOS中多執行緒之GCD應用iOS執行緒GC
- Java 多執行緒應用 之 ArrayBlockingQueueJava執行緒BloC
- 同步寫兩個資料庫--多執行緒資料庫執行緒
- 【Python】 多程式與多執行緒Python執行緒
- PyQt應用程式中的多執行緒:使用Qt還是Python執行緒?QT執行緒Python