I want to implement a plugin manager in my application with the new plugin package from Go 1.8 beta.
As the docs say (https://tip.golang.org/pkg/plugin/): "A plugin is only initialized once, and cannot be closed."
What are the implications of this?
Let's suppose I want to implement the load of plugins in runtime, and my program detects a change in a binary plugin (through md5 checking).
Do I have to restart my program to be able to load the modified and recompiled version of a plugin? What happens when I discard every reference to the older plugin? is it garbage collected? I don't know if it's that simple so I can just discard all the references and just load the new plugin.