JDevlieghere wrote: > However, when lldb is used as a library, we need a way to manage opened > modules to avoid problems with file locks (on some systems) for modules that > we no longer need.
Can you give a concrete example? This seems like its own issue that should be solved rather than worked around. I wouldn't expect us to need to keep files open for as long as a module exists. > It should be possible to record all loaded modules and use > `ModuleList::RemoveSharedModule` and `RemoveOrphanSharedModules` functions to > clear the cache, but these functions are not available in the API. This > approach is also way too complicated when we just need to cleanup the library. This is exposed from the SB API through `SBDebugger::MemoryPressureDetected`. Not sure what's "complicated" about calling his function, but I do agree that this shouldn't necessary be an explicit operation and would make a good default. The natural place to do this is in `SBDebugger::Destroy`. You can have many debuggers and it seems like a bad idea to clear the modules when you clear one of them. https://github.com/llvm/llvm-project/pull/147289 _______________________________________________ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits