Yes you could use setTimeout although the documentation for setTimeout actually recommends a Timer over setTimeout but they are specific as to why. I suspect it is because under the covers setTimeout creates a Timer anyways. IMHO AsyncDispatcher is a cleaner approach as it encapsulates the timer in a seperate class and is reusable.
Re: prevent stack overflow
Yes you could use setTimeout although the documentation for setTimeout actually recommends a Timer over setTimeout but they are specific as to why. I suspect it is because under the covers setTimeout creates a Timer anyways. IMHO AsyncDispatcher is a cleaner approach as it encapsulates the timer in a seperate class and is reusable.