c# - Task.WhenAll 在请求之间添加延迟(httpclient)
问题描述
我在Task HttpResponseMessage 的集合上使用Task.WhenAll。我想在每个请求之间添加一个 Task.Delay 以限制对 API 的调用。
显然,我的列表是一个强类型列表,Task<HttpResponseMessage>
而 Task.Delay 只是一个任务。有没有办法同时处理这个问题,还是我需要重新考虑我的实现?
foreach (var x in items)
{
requestList.Add(MakeHttpClientCall(x)); <== requestList = List<Task<HttpResponseMessage>>
// want to add a Task.Delay here e.g.
requestList.Add(Task.Delay(4)) etc
}
Task allTasks = Task.WhenAll(statNumberList);
try
{
await allTasks;
}
我试过玩任务列表和演员表,但到目前为止还没有运气。希望这是有道理的!谢谢
解决方案
推荐阅读
- java - 如何处理过滤表上的“setColumnCollapsingAllowed”操作?如何在 VAADIN 中获取受影响的列名或项目 ID?
- wordpress - WordPress 中未显示评论 - single.php 似乎没有通过 comments.php
- laravel - 在 db 中输入 30 分钟后,在 laravel 中运行一段代码
- ios - 在 iOS Swift 中从设备获取图像的 URL 路径
- android - 我的布局无法正常工作,如设计器视图中所示
- json - Postgres JSON 查询匿名数组
- javascript - 如何从资产文件夹中导入多张图片
- python-3.x - 如何动态替换 tkinter 标签(更新的数据在 for 循环内)
- python - 如何在曲面图上投影一条线?
- python - 如何从 Python 中的两个列表生成 json