) 누군가 turnEvenOld(250, 250)
(0.089ms)이 turnEvent(250, 250)
(0.447ms)보다 훨씬 빨리 실행되는 이유를 설명 할 수 있습니까? jsperf 테스트 setInterval() vs requestAnimationFrame (
setInterval()
보다 실행 된
requestAnimationFrame()
를 사용하여 생각?
하여 setInterval() :
var turnEventOLD = function turnEvent(AnX, AnY) {
----VARIABLES----
temp = setInterval(myAnimation1, 1000/60);
function myAnimation1() {
----DRAWINGCANVAS------
-----
----CONDITIONS--------
if (one301 && one401) {
clearInterval(temp);
}
}
}
requestAnimationFrame() :
var turnEvent = function turnEvent(AnX, AnY) {
----VARIABLES-----
function render() {
----DRAWING CANVAS-----
------
----CONDITIONS---------
if (one301 && one401) {
---stop requestAnimation--
}
}
(function animloop(){
----CONDTION-----
requestAnimationFrame(animloop);
render();
})();
}
turnEventOLD는 turnEvent가 완료되기 전에 렌더링 호출 (함수를 defering 제외) 아무런 작업을하지 않습니다. 또한 requestAnimationFrame()을 사용하면 초당 60 개 이상의 렌더링을 실행할 수 있으므로 더 많은 CPU를 사용할 수 있습니다. – dandavis