[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Discuss-gnuradio] block without work function won't stop

From: Nemanja Savic
Subject: Re: [Discuss-gnuradio] block without work function won't stop
Date: Tue, 26 May 2015 14:37:55 +0200


thank you Marcus for your fast answer. Well, the problem is that nobody ecept scheduler knows when the flowgraph has finished, so I don't know who should sent that message to the block. This is however not of crucial importance for me. Namely I wanted to test some of my custom blocks, and test flowgraph necever reached completion, but as soon as message accepting dummy block was out everything was fine.


On Tue, May 26, 2015 at 2:29 PM, Marcus Müller <address@hidden> wrote:
Hi Nemanja,

the point is that with message passing, it's not clear that your block is ever finished.
Hence in block.cc, we have a mechanism to retrieve the "finishedness" of a pure-message-block.

    if((detail()->ninputs() != 0) || (detail()->noutputs() != 0))
      return false;
      return d_finished;

So, you'll have to set the d_finished variable of your block; sadly, that's a private one by design (I think there are thread-safety reasons this is not directly exposed, but I'm not sure -- I'd have to as T[io]m about that).
The proper way to do so is to send your block a message to its pmt::mp("system") port, containing pmt::mp("done").

Best regards,

On 05/26/2015 02:10 PM, Nemanja Savic wrote:
Hi all,

I have a block that is used only for acepting messages and writing their content into database. The block is written in python and it has no work function, but only constructor and message handler. However when I run my flowgraph it won't finish until I terminate it. When I exclude this block it runs to completion normally.
Is there any issue with messages in this case. Should I manually delete messages from the message queue or something like that.


Nemanja Savić

Discuss-gnuradio mailing list

Discuss-gnuradio mailing list

Nemanja Savić

reply via email to

[Prev in Thread] Current Thread [Next in Thread]