async*阻塞函数体的执行
创始人
2024-09-21 00:01:05
0

可以使用异步迭代器来解决这个问题。异步迭代器是一种特殊类型的迭代器,可以在遍历元素时异步地产生值。与同步迭代器不同,异步迭代器可以在产生值时暂停执行,等待某些异步任务完成后再继续执行。

下面的代码演示了如何使用异步迭代器来避免阻塞函数体的执行:

async function* loadItems() {
  // 异步迭代器
  const items = await api.getItems(); // api是一个异步函数,会返回一个Promise

  for (const item of items) {
    yield await api.getItemDetails(item); // 等待Promise完成
  }
}

async function displayItems() {
  for await (const item of loadItems()) { // 使用异步迭代器
    console.log(item);
  }
}

displayItems(); // 启动异步任务

在这个示例中,loadItems 函数返回一个异步迭代器,它从 api.getItems() 函数中获取一些项目,并返回一个异步'generator”对象,该对象将这些项目的详细信息异步地产生出来。注意,此时函数体并没有被阻塞。

displayItems 函数使用'for await”循环来遍历异步迭代器所产生的值,这样每当一个项目详细信息产生出来时,就会打印到控制台中。由于使用了异步迭代器,这个循环也不会阻塞函数体的执行。

最后,在外部函数中调用 displayItems 函数来启动异步任务。

相关内容

热门资讯

脚本推荐!hhpoker有没有... 脚本推荐!hhpoker有没有作必弊辅助,hhpoker脚本下载(透视)好像真的有插件(哔哩哔哩)1...
透视关于!aa poker辅助... 透视关于!aa poker辅助,aapoker怎么设置抽水(透视)都是存在有脚本(哔哩哔哩)一、aa...
脚本教你!wpk辅助器是真的吗... 脚本教你!wpk辅助器是真的吗,wpk俱乐部有没有辅助(透视)本来是有方法(哔哩哔哩)1、实时透视辅...
脚本详情!德普之星app安卓版... 脚本详情!德普之星app安卓版破解版,德普之星透视辅助软件下载(透视)竟然有插件(哔哩哔哩)1、起透...
透视了解!德普之星私人局辅助器... 透视了解!德普之星私人局辅助器,德普之星辅助器app(透视)好像真的是有app(哔哩哔哩)1、下载好...
透视推荐!aapoker破解侠... 透视推荐!aapoker破解侠是真的吗,aapoker怎么提高中牌率(透视)确实真的有工具(哔哩哔哩...
脚本关于!aapoker脚本怎... 脚本关于!aapoker脚本怎么用,aapoker透视脚本(透视)本来是有技巧(哔哩哔哩)1、玩家可...
脚本了解!wpk可以作必弊吗,... 脚本了解!wpk可以作必弊吗,如何判断wpk辅助软件的真假(透视)总是是有神器(哔哩哔哩)1)辅助插...
脚本解谜!hhpoker德州有... 脚本解谜!hhpoker德州有挂吗,hhpoker透视工具(透视)切实真的有教程(哔哩哔哩)1、每一...
透视详细!wejoker辅助软... 透视详细!wejoker辅助软件视频,htx矩阵wepoker辅助(透视)本来真的是有神器(哔哩哔哩...