python - 如何让线程等待符合要求的条件
问题描述
我已阅读Python 中是否有一种简单的方法可以等到某些条件成立?和其他一些帖子,但我认为它们中的任何一个都不能满足我的具体问题。如果我错过了一个,我很抱歉,我只是不确定在我已经拥有的之外要搜索什么。
我有很多线程在做某种计算。我需要它们按创建顺序打印。我目前的解决方案是:
while thread_num != current_print_num:
pass
print(data)
current_print_num += 1
我不相信这是最有效的方法。检查我在while循环中设置的条件后,有没有办法让线程停止执行一段时间?我知道我可以让它睡觉,但我不想设置它等待的时间。理想情况下,它会在 current_print_num == thread_num 时唤醒。
一个好的解决方案是让线程在前一个线程完成时相互通信。有什么好的方法吗?
解决方案
推荐阅读
- visual-studio - 飞地字段不工作,但没有错误
- sql - SQL 查询输出不符合预期
- firebase - 为什么我无权访问 firebase
- android - 在android中将本机键盘更改为可浮动的
- python - 如何关闭/打开 LSTM 层?
- ios - 隐藏导航栏时,iOS Personal Hotspot 会破坏布局
- design-patterns - Flutter-如何在 Flutter 的整个应用程序生命周期中将数据保存在内存中?
- linux - 如何将“-fstack-protector-all”添加到makefile?
- python - 手写签名验证
- scala - 如何使用代码模板的 Scala 宏/准引用?