0
所以,基本上,我有一個有擺動計時器的搖擺遊戲。這是計算機計算完成之後的等待,直到它轉變爲止,因爲人類看起來不那麼快。當該計時器執行時,下一個回合開始,計算機AI輪到它。 問題是,當兩個玩家都是計算機時,理論上這將在無限期內將定時器彼此堆疊在一起,因爲在定時器內部,同樣的定時器將(間接)再次被調用,並且再一次。這是否會產生數據泄漏?如果是這樣,我還能做些什麼來實現相同的「等待」過程?搖擺 - 彼此堆疊計時器(這是不好的做法?)
因此,在僞代碼,這是發生了什麼事:
public void computerTurn() {
...
new Timer(1000, new ActionListener() {
....
if (foo)
computerTurn()
}
}
這不會產生定時器或泄漏的無限棧,所以不會成爲一個問題(因爲'computerTurn'不直接調用'ActionListener'內的代碼)。使用內置的重複功能仍然是可取的。 – zapl