Promise 무한반복으로는 브라우저를 죽일 수 있을까?
Promose로 전달된 call back 은 micro task queue로 전달된다.
이번 실험의 결과에서 주목해야할 점은 버튼을 누르면 뭔가 아리까리하게 되는듯 마는듯 하면서 안되는것!!
브라우저는 죽는다 대체 setTimeout과 차이점은 뭘까?
setTimeout에 등록된 callback 은 Task Queue에
promise에 등록된 callback 은 Micro Task Queue에 전달된다.
Micro Task Queue의 특징은 큐가 비워질때까지 EVENT LOOP가 블록상태에 빠진다는것. 위의 코드는 Promise 의 결과로 Micro task queue에 callback 이 전달되는 속도가 JS Call Stack에서 실행되는 속도보다 빨라서 문제가 브라우저가 죽는것!
Last updated