我有n个并行运行的线程,每个线程都执行一些自定义逻辑。然而,我的要求是当任何一个线程完成其执行时,所有其他线程都应该停止执行并返回。
最好的实现方式是什么?我考虑通过使用共享的布尔变量来实现这一点。当任何一个线程完成其执行时,它将设置该布尔值。所有线程定期读取此变量,并在其被设置时退出。
另外,我的自定义逻辑是一个无限循环,一旦我知道某个其他线程已经完成执行,我希望在当前迭代之后停止执行。
应该如何正确地做到这一点?
最好的实现方式是什么?我考虑通过使用共享的布尔变量来实现这一点。当任何一个线程完成其执行时,它将设置该布尔值。所有线程定期读取此变量,并在其被设置时退出。
另外,我的自定义逻辑是一个无限循环,一旦我知道某个其他线程已经完成执行,我希望在当前迭代之后停止执行。
应该如何正确地做到这一点?