Concurrent on fiber and requestIdleCallback
Fiber Concurrent mode basic
let nextUnitOfWork = null
function workLoop(deadline) {
function enoughTime(){
return deadline.timeRemaining() >= 1;
}
while (nextUnitOfWork && enoughTime()) {
nextUnitOfWork = performUnitOfWork(
nextUnitOfWork
)
}
requestIdleCallback(workLoop)
}
requestIdleCallback(workLoop)
function performUnitOfWork(nextUnitOfWork) {
// TODO add dom node
// TODO create new fibers
// TODO return nextUnitOfWork (next visited fiber)
}Key Concept
window.requestIdleCallback:
Last updated