線程通信之打印12A34B心得

做打印時發現輸出的數字和字母不是連續的。 原因是循環的時候flag不滿足條件的那次循環就漏掉了。 查閱資料發現有兩種寫法: 先喚醒其他線程自己再wait,這樣下次再執行的時候是從wait()開始的,不會漏掉一次循環,前提只有一個num一個char線程。 或者把要輸出的num變量和循環變量單獨定義,這個時候循環變量最大值要比循環次數大一點。如下圖:
相關文章
相關標籤/搜索