I read somewhere that setInterval is CPU intensive. I created a script that uses setInterval and monitored the CPU usage but didn’t notice a change. I want to know if there is something I missed.
What the code does is check for changes to the hash in the URL (content after #) every 100 milliseconds and if it has changed, load a page using AJAX. If it has not changed, nothing happens. Would there be any CPU issues with that.
I don’t think
setIntervalis inherently going to cause you significant performance problems. I suspect the reputation may come from an earlier era, when CPUs were less powerful.There are ways that you can improve the performance, however, and it’s probably wise to do them:
setInterval, rather than a string.Don’t optimise prematurely — don’t make life difficult for yourself when there isn’t a problem.
One thing, however, that you can do in your particular case is to use the
onhashchangeevent, rather than timeouts, in browsers that support it.