This seems like releasing Zalgo. returning synchronously to a async function. 

also isn't this too agressive. async will keep calling the function (which is synchronous) over and over again. Maybe set a timeout before returning, or at least use setImmidiate before return