[swift-users] module (de)-initialization

Joe Groff jgroff at apple.com
Wed Dec 21 12:06:21 CST 2016

> On Dec 20, 2016, at 8:54 AM, Jens Alfke via swift-users <swift-users at swift.org> wrote:
> Also, AFAIK there is no mechanism in Swift (yet) to load or unload a module at runtime, so a module load occurs when the program starts up, and an unload occurs when the program exits. 

dlopen works fine, though the only supported ways of getting a callable symbol out of the loaded image are currently to use a C entry point or look up a type defined in the module by name. Unloading Swift modules will likely never be supported, since this would impose a ton of complexity and performance cost on the runtime for little benefit. (Apple's ObjC runtime does not support unloading dylibs after classes inside them have been reified either.)


More information about the swift-users mailing list