python - 清理没有 .join() 且不阻塞主线程的线程
问题描述
我的情况是,我有两个端点可以要求一个值,一个可能比另一个快。对端点的调用被阻塞。我想等待一个完成并获得结果,而不是等待另一个完成。
我的解决方案是在单独的线程中发出请求,并让这些线程在完成时将标志设置为 true。在主线程中,我不断检查标志(我知道这是一个忙碌的等待,但这不是我现在主要关心的问题),当一个完成时,它会获取该值并将其作为结果返回。
我遇到的问题是我从不清理其他线程。如果不使用,我找不到任何方法来做到这一点.join()
,这只会阻止和破坏整个事情的目的。那么,如何在不从主线程加入的情况下清理阻塞的另一个较慢的线程?
解决方案
推荐阅读
- php - 使用 PHP cURL 向 MapQuest 发送 GET 请求
- python - 如何使用函数装饰器检查函数类型?
- winforms - CefSharp winforms 解决方案可能存在焦点问题
- excel - 输入以“-”分隔的数字和字母的公式
- reporting-services - SSRS Excel 输出 - 仅在表格最右侧隐藏单元格
- java - 在 Java 中的 ldapContext 中搜索所有子域
- r - 如何融化数据框中的列表列
- go - 解析文件中的数据时地图大小不同的地图
- javascript - 桌面版 Chrome 支持的最大图像尺寸是多少?
- java - 为什么我的 2D 阵列克隆不止一次?