[英]Increasing computational efficiency of Game of Life recreation
我用JavaScript重新創建了《人生游戲》。 它有效,但是在計算上無效。 我具有此功能可以在幾代人之間等待。
var speed = 500; //milliseconds
function live() {
middleMan = setInterval(processGeneration, speed);
if (!dead) {
window.clearInterval(middleMan);
live();
}
}
500毫秒沒有任何反應,然后是計算任務的海嘯。 具有諷刺意味的是死區時間和滯后時間的組合。 如何使用500毫秒?
您可以使用
function live() {
processGeneration();
if (!dead) {
setTimeout(live, speed);
}
}
live();
要么
function live() {
processGeneration();
if (dead) {
clearInterval(timer);
}
}
var timer = setInterval(live, speed);
要么
function live() {
processGeneration();
if (!dead) {
requestAnimationFrame(live);
}
}
requestAnimationFrame(live);
但是請注意,如果使用setInterval
,則每個live
調用所花費的時間必須少於speed
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.