我在python中编写了一个数独求解器,它使用递归函数来运行数独板的所有可能的排列。该程序线性地解决了数独难题,我试图通过将任务划分为不同的线程来加快速度。但是,经过对线程的深思熟虑和研究,我仍然不知道如何将线程实现到我的函数中。这是我的功能btw
def solve(num,possible,temp):
y = num%9
x = num-y
try:
for xyz in possible[num]:
if num != 80:
if ispossibility(temp,xyz,x,y) == True:
temp[num] = xyz
solution = solve(num+1,possible,temp)
if solution != None:
raise exception
temp[num] = 0
else:
if ispossibility(temp,xyz,x,y) == True:
temp[num] = xyz
solution = copy(temp)
raise exception
except exception:
return solution
所以我想要一个单独的线程来运行“solution = solve(num + 1,possible,temp)”这一行 但问题是,一旦一个线程找到答案,我就无法弄清楚如何停止所有单独的线程。关于该做什么的任何指示?