因此,当此方法尝试解决一个非常大的问题(例如9999 ^ 99999 ^ 99999)时,它只会停顿下来并停止其他所有程序的运行,我怎么拥有它,所以它会在10秒后结束?
def solve_equ(variable, equ):
ans = []
if variable is None:
return [f"`{N(equ)}`"]
else:
partial_ans = solve(equ, variable, dict=True)
for i in partial_ans:
ans.append(f"{variable} = `{N(list(i.values())[0])}`\n")
return ans
solve()
方法陷入困境
答案 0 :(得分:0)
def solve_equ(variable, equ):
ans = []
if variable is None:
return [f"`{N(equ)}`"]
else:
partial_ans = solve(equ, variable, dict=True)
for i in partial_ans:
ans.append(f"{variable} = `{N(list(i.values())[0])}`\n")
return ans
proc = multiprocessing.Process(target=solve_equ, name="Solve", args=(x))
proc.start()
time.sleep(10)
proc.terminate()
proc.join() # cleanup
name
对代码没有影响,仅用于标识。