campoy / Golang Plugins
Licence: apache-2.0
A simple demo of hot code swapping with Go 1.8 and its plugins feature.
Stars: ✭ 252
Programming Languages
go
31211 projects - #10 most used programming language
golang-plugins
golang-plugins uses the new plugin feature of Go 1.8 to implement hot code swapping in Go.
This is highly experimental and just a way for me to learn how plugins work and what limitations I find.
Run this program and then try editing, adding, or removing
files in the plugins
directory.
go run main.go
The entry point to the plugins is the Run
function, that
doesn't receive any parameters and returns an error.
Limitations:
- This only works on Linux.
- We poll regularly the plugins directory instead of using fsnotify.
- We recompile every time, even if the code has not changed.
- This causes a continuously growing memory requirement (memory leak?).
Disclaimer
This is not an official Google product (experimental or otherwise), it is just code that happens to be owned by Google.
Note that the project description data, including the texts, logos, images, and/or trademarks,
for each open source project belongs to its rightful owner.
If you wish to add or remove any projects, please contact us at [email protected].