2015-11-25 59 views
2

忘记的方法。如果我打的REPL,我已经定义了一个函数几种不同的方法:我可以朱莉娅从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 

我可以忘记朱莉娅部分或全部这些?

+1

'工作区()'将替换用干净的工作区中的顶层模块,但它不是选择性的,即,它会清除一切。 –

回答

4

总之,没有。

Julia没有模拟MATLAB的clear函数;一旦在Julia会话中定义名称 (技术上,在模块Main中),总是存在 。

如果您关心内存使用情况,您可以随时用 替换消耗较少内存的对象。例如,如果A是不再需要的千兆字节大小的 阵列,则可以使用A = 0释放内存。内存将在下次垃圾收集器运行时释放;你 可以强制这与gc()发生。

source

+0

谢谢!记忆不是我关心的,在这里。我在玩不同类型的方法定义时犯了错误。我想摆脱有错误的方法定义,以便有一个我可以修复的通用方法,而不需要修复所有这些方法。我可以重新启动REPL,但我只是想知道是否有办法像这样操作MethodTable。 – Benjohn

+2

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