On Feb 27, 12:16 pm, Anthony Shipman <[email protected]> wrote: > My software experiment that is available at > http://www.anthony-shipman.id.au/software/index.html > includes a plug-in system e.g. > > jfx.Plugin.addPath("/tmp"); > jfx.Plugin.load("jqt"); > jfx.Plugin.unload("jqt"); > > or set JFX_PLUGIN_PATH or it just uses a default plugins directory.
Hi, Anthony! Thanks, i'll take a look at that, too :). As a side-note: it's actually not safe (EVER) to unload a DLL. It is NEVER possible to 100% guaranty that resources contained within a DLL will be closed properly this way. One problematic case i'm experienced with is when, e.g. a function pointer in the DLL is added to a factory map in the main application. If the DLL is closed, that function pointer becomes dangling and will Cause Grief. On a philosophical level it is simply not possible to make any such safety guarantees with DLLs, especially C++ DLLs, because static initialization if the DLL can allocate arbitrary resources, perform arbitrary tasks, and load other DLLs. For example, consider this bit of code from a DLL: static int bogo = (call_some_function(),1); generically speaking, call_some_function() could do ANYTHING, and closing a DLL is unlikely to undo any resource allocation performed by that routine. While that may seem like a made-up problem, this approach is central to some C++ classloaders. --~--~---------~--~----~------------~-------~--~----~ v8-users mailing list [email protected] http://groups.google.com/group/v8-users -~----------~----~----~----~------~----~------~--~---
