我一直在研究一個在背景(2D)中具有滾動環境的概念遊戲的小證明。我有一個名爲roadTile的自定義類對象,它基本上是一個200px高的塊,帶有一張圖片以及一些物理圖。我一次將切片存儲在LinkedList 5中。我有一個主循環負責移動所有內容並檢查衝突。循環應該每50ms執行一次(由定時器控制),並通過測量最後一次運行的長度,然後從睡眠時間中扣除它來保持速率不變。LinkedList在add()上產生了巨大的延遲()
這通常運行良好,循環運行時間不到一毫秒,但是當我啓動程序時,它會在第2-7次之後「扼殺」。我刪除了舊的瓷磚,並將新的瓷磚放在列表的底部。在調用add(new roadTile())時,程序將暫停20-400ms,這是計算機時代的一個千年,並且最後這個行爲並不一致。有時候,它有時可以正常工作。
我很笨,如何消除這一點,任何想法?
一個普通的Java鏈接列表? –
yup ..沒什麼特別的 – TRU7H
列表有多大? – SLaks