[Rust] To Signal or not to Signal

I am currently working through writing my first Plugin. Using tutorial 1 as a basis I am in the process of porting RidgeRun’s GstPerf plugin to dive a little deeper as well as learn a bit about FFI and the like. I remember a talk from Jan Schmidt @ LinuxConfAU 2018. He had mentioned something like “We are moving away from signals”. I have noticed in the core docs Signals are not shown (anymore) in the system graph, and only mentioned in the dev docs.

GstPerf uses signals. I am going to implement the signal just to know how that works, but I am really interested in how this ‘should’ be done. Should I use the message bus? Any guidance and/or pointers to docs is very much appreciated.

It depends on what the signal in question does. For many cases, signals are the only usable solution. In other cases, something else (e.g. messages) might be a better choice.

1 Like