What is the right async mechanism for this?