type CancelFunc func()
CancelFunc, if called, will disable the associated cleaner. This allow to create temporary cleaner. Be mindful though to not create too much of them as they are just disabled, not removed from memory.
RegisterCleaner is responsible for registering a cleaner function. When a function is registered, the Signal watcher is started in a goroutine.
CleanerFunc is a function to be executed when an interrupt trigger