0
我有一個運行迭代深化搜索,想的一定時間過去之後,從最深的搜索返回值的函數。代碼框架看起來像如何運行一段時間後返回的搜索?
import time
answers = []
START = time.clock()
current_depth = 1
while time.clock() - START < DESIRED_RUN_TIME:
answers.append(IDS(depth=current_depth))
current_depth += 1
return answers[-1]
的問題與此代碼是它不會返回,直到時限過後。解決這個問題的最好方法是什麼?如果我只需在IDS函數中添加時間檢查,我如何確保返回找到的最後一個值?任何幫助將不勝感激。
對於搜索問題,我保留了一個全球「最好」的答案,搜索分支更新了它,因爲他們找到了更好的答案。如果你有一個線程進行搜索,你不會遇到線程安全問題,否則你需要鎖定/關鍵部分/任何更新最好。 –