make sure async connection are clean when exited