我可以让 Julia 忘记 REPL 中的一个方法吗

Ben*_*ohn 2 methods julia

如果我在 REPL 中玩游戏并且我已经为一个函数定义了几个不同的方法:

julia> methods(next)
# 3 methods for generic function "next":
next(i::BigInt) at none:1
next(i::Int64) at none:1
next(i) at none:1
Run Code Online (Sandbox Code Playgroud)

我可以让 Julia 忘记其中的部分或全部吗?

jub*_*0bs 5

简而言之,没有。

Julia 没有 MATLABclear函数的模拟;一旦在 Julia 会话中定义了名称(技术上,在 module 中Main),它就会始终存在。

如果您关心内存使用情况,您始终可以用消耗较少内存的对象替换对象。例如,如果A是一个不再需要的千兆字节大小的数组,则可以使用A = 0. 下次垃圾收集器运行时会释放内存;你可以用gc().

来源

  • 有`workspace()`,但它会清除一切:http://docs.julialang.org/en/release-0.4/stdlib/base/?highlight=workspace#Base.workspace (3认同)