多線程之兩個線程交替打印的問題分析
場景一 在我們面試中經常會有這么一個場景,就是我們用線程A輸出“A”字符,有線程B輸出“B”字符,交替進行,要求A線程執行完任務輸出:“A線程打印完了”,B線程執行完任務輸入:“B線程打印完了”,最后有主線程輸出一句話“我打印完了”! 當你看到這個場景時,有點多線程經驗的人肯定會感覺很容易 ...
場景一 在我們面試中經常會有這么一個場景,就是我們用線程A輸出“A”字符,有線程B輸出“B”字符,交替進行,要求A線程執行完任務輸出:“A線程打印完了”,B線程執行完任務輸入:“B線程打印完了”,最后有主線程輸出一句話“我打印完了”! 當你看到這個場景時,有點多線程經驗的人肯定會感覺很容易 ...
1. 要打印的資源 2. 打印奇數的線程 3. 打印偶數的線程 4. 主函數 5. 運行結果 ...
建立三個線程,線程名字分別為:A、B、C,要求三個線程分別打印自己的線程名字,但是要求三個線程同時運行,並且實現交替打印,即按照ABCABCABC的順序打印。打印10輪,打印完畢控制台輸出字符串:"打印完畢" 方法之一:使用Condition等待喚醒機制,代碼如下: ...
...
這世上有三樣東西是別人搶不走的:一是吃進胃里的食物,二是藏在心中的夢想,三是讀進大腦的書 分析題目。需要使用兩個線程交替打印奇偶數。 使用同步鎖解決這個問題 使用信號量來實現交替打印 定義兩個信號量,一個奇數 ...
...
相關代碼 https://github.com/LiWangCai/blogRelated 可自行獲取 ...