python - 异步 http 的新手:如何解决这个问题?
问题描述
我还没有编写异步 Python 程序,而且我很难开始。我想要做的是带有大致这个伪代码的http请求:
WorkQueue = stuff
ResultsQueue = empty
for Slot_N in range(0,N):
[[launch an http request from WorkQueue]]
然后无需显式等待任何给定的请求,因为每个 http 请求都以任何顺序完成......
while any request is active:
wait for any request to deliver
Add that request's results to ResultsQueue
if WorkQueue isn't empty:
[[launch another request from WorkQueue]]
也许我表达得不好,但重点是从工作队列中异步启动许多请求,以它们到达的任何顺序累积它们的结果,并通过尽快启动另一个请求来保持槽池充满http请求作为较早的一个提供结果并释放一个插槽。当工作队列为空时,程序完成。
我真正不清楚的是在异步请求终止时处理结果的机制,而不阻塞等待任何单个结果,以及正确排队启动和记录结果。
你能帮忙吗,或者给我一些非常清楚的例子,我可以把我的简单想法包装起来?
解决方案
推荐阅读
- ios - 使用 Xcode11 iOS13 SDK 时,xcodebuild 失败并出现错误=nsconsumed-mismatch
- swift - 如何将数字添加到 UILabel 上显示的总数中
- excel - 通过刷新网络数据更新单元格时如何运行宏?
- laravel - Laravel 下载 pdf 文件存储在单独的 Laravel 应用程序中
- c# - OpenPop 无法阅读电子邮件正文
- php - 如何将功能添加到div
- dynamics-crm - 扩展 CRM 实体的最佳方式是什么
- elasticsearch - 从 elasticsearch Node.js 客户端 v7.2.0 获取不正确的聚合查询响应
- python - 每个月的第三个星期六之后的星期二触发 DAG
- c# - 通过 C# 更改 APK(来自 AppInventor)资产(数据)而无需“重新编译”