I am writing a module that might need dynamic change to the block
length.
So I want to call set_output_multiple(blk_len) when the flow graph is
running.
Firstly, is this allowed?
Secondly, what are the effects?
If I have a “noutput_items%blk_len==0” checking in work(), will it fail
during the transition?
Thanks
Kyle
On Thu, Nov 25, 2010 at 11:11:27PM +1100, Kyle Z. wrote:
I am writing a module that might need dynamic change to the block length.
So I want to call set_output_multiple(blk_len) when the flow graph is running.
Firstly, is this allowed?
Secondly, what are the effects?
If I have a “noutput_items%blk_len==0” checking in work(), will it fail during
the transition?
Thanks
Kyle
There is no guarantee that set_output_multiple will work if you change
it on the fly.
It is possible that you could specify a value for set_output_multiple
that would require reallocation of the impacted buffers. We do not do
that.
Eric
On 26/11/2010 11:28 AM, Eric B. wrote:
There is no guarantee that set_output_multiple will work if you change
it on the fly.It is possible that you could specify a value for set_output_multiple
that would require reallocation of the impacted buffers. We do not do
that.Eric
Thanks Eric.
How about set_relative_rate()? can I call it on the fly?
Another question: is it thread safe to modify the module’s member
variables from outside the work()?
Kyle
On Fri, Nov 26, 2010 at 11:55:50AM +1100, Kyle Z. wrote:
Thanks Eric.
How about set_relative_rate()? can I call it on the fly?
Small changes are OK. Large changes have the same problem as
set_output_multiple.
Another question: is it thread safe to modify the module’s member
variables from outside the work()?
In general no, unless you do something to make it safe yourself.
Eric