說我正在調試代碼,其中涉及的一個或多個功能是在memoize
的幫助下定義的。我將編輯一些代碼,在REPL中重新加載文件,然後嘗試新的代碼。但是如果這個bug仍然存在,我總是會質疑是否因爲我沒有修復這個bug,或者因爲memoize
緩存了錯誤結果。
那麼,有沒有什麼方法可以重新啓動REPL,我可以用它來確保memoize
已經失去了內存?Clojure的記憶什麼時候清除緩存?
(請注意,在REPL會話消除了memoize
電話既繁瑣,有時甚至是不現實的,因爲功能的性能可能在很大程度上依賴於記憶化。)
你是什麼意思的「替換」? –
https://github.com/clojure/core.memoize是一個不太直白的選項。 – slipset