【问题标题】:is it possible to reclaim memory resources from a llvmContext?是否可以从 llvmContext 中回收内存资源?
【发布时间】:2011-05-13 16:01:13
【问题描述】:

从 llvm 2.7 开始,可以隔离类型以及 LLVM 在 llvmContext 中创建 JIT 模块可能需要的任何内容

但是,我不完全清楚如何回收在 llvmContext 中分配的内存资源一旦被使用。我认为应该有一个,因为使用 llvmContext 的目的是从不共享任何依赖项的其他线程中安全地使用它们,但是线程会定期启动和完成,并且不断创建新的 llvmContexts 最终会消耗所有可用的 RAM

【问题讨论】:

    标签: c++ jit llvm


    【解决方案1】:

    是的,LLVMContext 的析构函数将释放其所有内存。如果不是,请提交错误,http://llvm.org/bugs!当然,不要破坏全局 :-)

    如果你正在关闭,你也可以调用 llvm::llvm_shutdown() 来释放全局静态变量。请注意,没有 llvm_startup 功能或类似的功能...

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2018-12-14
      • 1970-01-01
      • 2010-09-25
      • 1970-01-01
      • 2023-03-10
      • 2011-06-04
      • 2017-10-30
      相关资源
      最近更新 更多