任务 - 属性分配

2024-01-12

最初,我有以下内容:

foreach (Product product in products)
{
    product.ImageUri = _imageClient.GetImageUri(product.GetImagePath());
}

我想做的是并行处理所有产品,而不是一次处理一个产品。我已将 _imageClient.GetImageUri(...) 更新为 _imageClient.GetImageUriAsync(...)。我现在可以执行以下操作:

List<Task<Uri>> tasks = new List<Task<Uri>>();

foreach (Product product in products)
{
    Task<Uri> task = _imageClient.GetImageUriAsync(product.GetImagePath());
    tasks.Add(task);
}

var results = await Task.WhenAll(tasks);

这种方法的问题是我现在必须循环遍历结果,将每个结果与正确的产品相匹配并分配属性。

有没有办法结合这两种方法,以便我可以将属性分配作为任务的一部分执行,以便所有方法都可以并行运行?


关于什么:

    List<Task<Uri>> tasks = new List<Task<Uri>>();

    foreach (Product product in products)
    {
        tasks.Add(Task.Run( async () =>  product.ImageUri = await _imageClient.GetImageUriAsync(product.GetImagePath()) ));
    }

    await Task.WhenAll(tasks);    

你甚至不需要最终的结果。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

任务 - 属性分配 的相关文章

随机推荐

  • T-SQL 子字符串 - 最后 3 个字符

    使用 T SQL 我将如何获取last 3varchar 列的字符 所以列文本是IDS ENUM Change 262147 190我需要190 SELECT RIGHT column 3 这就是你所需要的 你也可以做LEFT 以同样的方式
  • Flex 容器中的文本在 IE11 中不换行

    考虑以下片段 parent display flex flex direction column width 400px border 1px solid red align items center child border 1px so
  • IIS7 拒绝分块编码文件上传

    我有一个 Windows Apache2 PHP 应用程序 它使用分块编码接收文件 原因是 file上传是动态的 传输前不知道其长度 这一直开箱即用 效果很好 现在我需要将应用程序移植到 IIS7 PHP 问题是 IIS 无法接收分块文件
  • 为什么 Java 中不能有“List>”? [复制]

    这个问题在这里已经有答案了 在Java中 为什么下面这行代码不起作用 List
  • 如何为超类编写 Hibernate Criteria 查询并检查某个子类?

    如何为超类编写 Hibernate Criteria 查询并检查某个子类 假设我们有以下所有类都与 Hibernate JPA 映射 Entity Inheritance strategy InheritanceType JOINED pu
  • 为什么我无法在 Swift iOS 应用程序中使用 CIFilter 将图像反转回原始图像

    我正在开发一个简单的应用程序 它有一个带有预加载图像和按钮的图像视图 按下按钮时 图像视图中的图像应反转 它第一次工作 但我希望当我再次按下按钮时它会将图像反转回其原始形式 然而 第二次按下按钮时它崩溃了 这是相关代码ViewControl
  • 为什么Swift标准库中的reverse()函数返回Reverse RandomAccessCollection?

    现在我已经学习了 Swift 达到了合理的水平 我正在尝试掌握标准库 但实际上它对我来说主要是 所以一个具体的问题 我有一个字符串数组 我可以对其调用reverse let arr Mykonos Rhodes Naxos reverse
  • 如何向 hline 添加图例?

    我想在 hline 图中添加一个图例 我的子集的头看起来像这样 Site Date Al 1 Bo6 2014 10 07 152 1 2 Bo1 2014 10 07 157 3 3 Bo3 2014 10 07 207 1 4 Bo4
  • 如何在 python pyqtgraph PlotWidget 中设置刻度标签

    我正在尝试绘制每天几个小时的时间序列 每天之间没有空白时间 如果我使用 pg GraphicsWindow 则效果很好 刻度标签为 9 00 10 00 17 00 如果我使用 pg PlotWidget 或 pg PlotWindow A
  • Python 最佳实践 - 在哪里存储 API 密钥/令牌

    我正在构建一个使用 API 令牌和密钥来访问服务的系统 但存储它们的最佳位置在哪里 我想将代码推送到 GitHub 而不推送令牌 目前 我已将它们放在一个名为的空白文件中Constants py并且 在主 python 文件中 我导入Con
  • 将剪辑路径位置移动到鼠标光标

    我有一个 SVG 形状 用作clip path在图像顶部 SVG 形状应遵循鼠标的位置 如果我使用的话我可以让它工作clip path circle 但如果使用则不然clip path url idOfMask 就像我在使用 SVG 作为剪
  • 如何使用 PHP 将 Word 文档转换为 XML?

    我想将 Word 文档 doc 和 docx 转换为 XML 我如何使用 PHP 来做到这一点 完成此操作后 我必须在该 XML 文件中添加一些数据 有人可以帮我吗 Word 文档 docx 是一个xml文件 只需解压即可
  • 无法从字符串中删除“空字符”

    我问过类似的question https stackoverflow com questions 17580662 how to read a text file that contains null character in delphi
  • 模板中的模板输入和模板引用变量

    我们使用 let 关键字创建模板输入变量 同时使用 var 创建模板引用变量 其中 var 是变量的名称 我们可以在模板中的任何位置引用模板引用变量 模板输入变量的范围怎么样 它与模板引用变量的范围有何不同 有人可以通过例子帮助我理解吗 d
  • 反应本机状态不更新

    我感觉我快要疯了 我在搜索栏中输入 x 但是this setState filter text 没有更新状态 console log this state filter 给我一个值 它的初始值在构造函数中设置 我可以看到文本变量的值为 x
  • 如何在 Python 绘图程序中使用多点触控?

    我正在Python中构建一个简单的绘画程序作为一个项目 使用Pygame 它的工作原理是 当按下鼠标并在表面上拖动它时 它基本上会绘制一系列圆圈 它还有其他一些小事情发生 但事情我想问的是 有没有一种方法可以将您知道的 mouse get
  • Python:获取正则表达式匹配的文本

    我在 Python 中有一个正则表达式匹配对象 我想获取它匹配的文本 说如果模式是 1 3 搜索字符串是 abc123xyz 我想得到 123 我怎样才能做到这一点 我知道我可以使用match string match start matc
  • 仅当设置另一个属性时才需要某个属性

    是否可以做一个属性required如果设置了另一个属性 例如 在下面的代码中 viewId必须制作属性required iff action属性已设置 XML
  • 在 OpenMP 中计算矩阵的条目

    我对 openMP 很陌生 但我正在尝试编写一个简单的程序来并行生成矩阵的条目 即对于 N M 矩阵 A 令 A i j i j 下面包含一个最小的示例 include
  • 任务 - 属性分配

    最初 我有以下内容 foreach Product product in products product ImageUri imageClient GetImageUri product GetImagePath 我想做的是并行处理所有产