Issue submitted: https://github.com/gnuradio/gnuradio/issues/5358
On Mon, Nov 29, 2021 at 1:58 PM Jeff Long <[email protected]> wrote: > It does not seem that python blocks can override start() and stop(), > which they should be able to do. So, don't go too far down that path. I do > not see anywhere in the code where this is used or would have been caught. > > The embedded blocks are easier, be beware that GRC calls the init function > to learn about the block. Therefore, you don't want any action taken as a > result of a call to init, for instance spawning a thread and starting to > send messages. Embedded python block are sort of a toy that turned out to > be useful. In general, an OOT is a better idea, but an embedded block can > work if it's simple enough. > > Maybe someone else has figured this out. With just a quick look, I don't > see how a Message Strobe kind of block can be implemented in python without > start() and stop(). > > Here's kind of a hack: make a python block with a message handler that > gets a periodic strobe from the existing Message Strobe block. In the > handler, send out the message that you would have sent in the thread. >
