Ensures that your async function runs to completion before it is executed again