如果频繁替换函数,Julia是否会垃圾收集旧代码?

如果频繁替换函数,Julia是否会垃圾收集旧代码?,julia,Julia,在典型的应用程序中,代码不会被太多替换,因此在进程退出之前是否释放旧代码无关紧要。然而,我想到的用例并不典型。如果我大量替换函数,Julia会垃圾收集旧代码(源代码、编译代码和所有中间表示)?据我所知,生成的代码永远不会被释放 例如,请参见。中的讨论“在2015年12月28日将其添加到0.5.0里程碑中”“将其从2015年12月29日的0.5.0里程碑中删除”@MattB。或者任何可能知道的人:这是LLVM框架本身的限制还是Julia使用它的方式?我不确定LLVM方面存在哪些限制,但请注意,旧方

在典型的应用程序中,代码不会被太多替换,因此在进程退出之前是否释放旧代码无关紧要。然而,我想到的用例并不典型。如果我大量替换函数,Julia会垃圾收集旧代码(源代码、编译代码和所有中间表示)?

据我所知,生成的代码永远不会被释放


例如,请参见。

中的讨论“在2015年12月28日将其添加到0.5.0里程碑中”“将其从2015年12月29日的0.5.0里程碑中删除”@MattB。或者任何可能知道的人:这是LLVM框架本身的限制还是Julia使用它的方式?我不确定LLVM方面存在哪些限制,但请注意,旧方法(您替换的方法)可能仍然会被世界年龄锁定的其他任务或线程调用。我可以想象,简单地确定一个特定的方法可以被GC’ed是一项计算成本非常高的任务。