Mercurial > octave
diff liboctave/util/oct-shlib.h @ 30749:076e19eac74a stable
allow deletion of dynamic_library objects to be delayed
* oct-shlib.h, oct-shlib.cc (dynamic_library::delete_later):
New function.
(possibly_unreferenced_dynamic_libraries): New static object.
(release_unreferenced_dynamic_libraries): New function.
* interpreter.cc (interpreter::main_loop):
Add release_unreferenced_dynamic_libraries as new event_hook.
* pt-eval.cc (debugger::server_loop, tree_evaluator::server_loop):
Also call release_unreferenced_dynamic_libraries in event loop.
author | John W. Eaton <jwe@octave.org> |
---|---|
date | Thu, 17 Feb 2022 22:21:03 -0500 |
parents | 796f54d4ddbf |
children | b124e123a759 |
line wrap: on
line diff
--- a/liboctave/util/oct-shlib.h Thu Feb 17 22:19:11 2022 -0500 +++ b/liboctave/util/oct-shlib.h Thu Feb 17 22:21:03 2022 -0500 @@ -133,6 +133,8 @@ delete m_rep; } + void delete_later (void); + dynamic_library (const dynamic_library& sl) : m_rep (sl.m_rep) { @@ -204,6 +206,11 @@ dynlib_rep *m_rep; }; + + // FIXME: Currently must return int so that it may be used as an + // event_hook function. + + OCTAVE_API int release_unreferenced_dynamic_libraries (void); } #endif