generator实现异步