如何杀死所有 Greenlets 或结束 "While not Queue.empty()" 循环?

How to kill all Greenlets or end "While not Queue.empty()" loop?

在这种情况下,如何在不使用 sys.exit() 的情况下结束 Gevent? 我不需要完成列表中的所有元素,我只需要使用队列直到找到一个字符串。

tasks = Queue()
while not tasks.empty():
            string = tasks.get()
            con = validate(string)
            if con == True:
                break

中断语句无效。 我是这样开始 Greenlets 的:

gevent.spawn(worker) 

我不能使用 sys.exit() 因为我想遍历列表并为每个对象启动一个新的 Gevent 实例。

我不熟悉 python,但请尝试使用布尔值作为 while 循环的额外条件:

tasks = Queue()
found = False
while not found and not tasks.empty():
    string = tasks.get()
    found = validate(string)