Python线程暂停和Wai

2024-09-28 22:36:32 发布

您现在位置:Python中文网/ 问答频道 /正文

我有很多线索。他们每个人都不断地调用run方法。每次运行方法结束时,我希望他们暂停并等待。

如何使线程一次执行一个线程,然后在所有线程完成后继续循环?我需要他们总是按顺序执行(即:1,2,3,4-1,2,3,4…)

我目前正在使用threading.Event,但结果不一致。

谢谢

更新

谢谢大家到目前为止的回答。

我正在用python编写类似于Robocode的东西。玩家设计一个机器人,机器人战斗到一个机器人还活着。每次“转身”后,机器人都会“暂停”,然后更新并绘制到屏幕上。然后他们都开始了新的转折。

示例:

# Bot extends threading.Thread
class DemoBot(Bot):
    def __init__(self):
        super(DemoBot, self).__init__()

    def run(self):
        while True:
            self.moveForward(100)
            self.turnLeft(90)

如你所见,机器人处于无限循环中。在move forward方法中,bot将向前移动100px。但是为了正确地更新屏幕,我必须移动一次,暂停,更新,然后再次移动。这就是为什么我需要能够“暂停”一个机器人一旦完成,并让程序等待其他人之前,更新屏幕。

希望这更有意义。


Tags: 方法runselfevent屏幕顺序initdef