mirror of
https://develop.openfoam.com/Development/openfoam.git
synced 2025-12-28 03:37:59 +00:00
ENH: lazier handling of dynamic libraries
- previously always called dlclose on opened libraries when destroying the dlLibraryTable. However, by force closing the libraries the situation can arise that the library is missing its own code that it needs on unload (#1524). This is also sometimes evident when closing VTK libraries for runTimePostProcessing (#354, #1585). - The new default is to not forcibly dlclose any libraries, unless the dlcloseOnTerminate OptimisationSwitch specifies otherwise. - The dlLibraryTable::close() method can be used to explicitly close all libraries and clear the list. - The dlLibraryTable::clear() method now only clears the entries, without a dlclose.
This commit is contained in:
@ -140,6 +140,11 @@ OptimisationSwitches
|
||||
// Force dumping (at next timestep) upon signal (-1 to disable) and exit
|
||||
stopAtWriteNowSignal -1;
|
||||
|
||||
//- Use dlclose() when clearing the dlLibraryTable.
|
||||
// This is presumably cleaner, but can also remove functions
|
||||
// that are still needed (eg, to terminate the library itself)
|
||||
dlcloseOnTerminate 0;
|
||||
|
||||
//- Choose STL ASCII parser: 0=Flex, 1=Ragel, 2=Manual
|
||||
fileFormats::stl 0;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user