純粹爲了線程學習的目的,我試圖創建一個老虎機的模擬。線程完成時如何更新main {}
3個卷軸,它們是3個獨立的線程。他們隨機等待一段時間,然後拿出一個1到9之間的隨機數字。
我已經成功了,但是,到目前爲止,我如何正確讓主{}知道3個卷軸是「完成」的,所以CheckJackpot()可以運行,然後可以重新啓動遊戲(線程)重新執行一遍?
我試着在卷軸上設置一個bool「isFinished」,並且主要在一段時間內檢查它(真),但是這完全擋住了我的cpu。通過在循環中添加睡眠定時器,我更接近了一步,儘管我可以告訴它這是不是馬虎的編碼,即使它可以在我的小實驗中工作。然後每個卷軸也需要一段時間(真)來檢查isFinished是否回到假,以重新開始我想象的遊戲。
我已經瞭解了鎖定語句,但我不相信這是我想要實現的正確解決方案。我有一種感覺,我需要了解「事件」,儘管它可能會超過我的頭,因爲這個話題還沒有在課堂上提出。什麼是這個困境的妥善解決方案?
我需要知道的一切,謝謝。 – Amivit