Are there any special considerations needed to use Linux signals
(in particular sigalarm) or forks from within a custom GnuRadio
I’m written a block that consumes an HDLC/MPoFR bitstream and
extracts and forwards any contained IP packets. The block
generates a number of data and error statistics which I would
like to periodically send to another system via a UDP packet,
at a rate which is unrelated to the block’s sample rate.
My thought is to use alarm() to generate a sigalarm every
reporting interval, and register a private method as the
signal handler. If the reporting ends up taking too long,
I would use a fork from within the signal handler and do
the reporting in the child process.
Is this approach workable within the GnuRadio framework?
Or are there interactions with the scheduler and/or the
use of threads that render it unworkable or unreliable?
Thanks in advance!