discuss-gnuradio
[Top][All Lists]
Advanced

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

Re: [Discuss-gnuradio] Strange output of "0" at the terminal


From: Tom Rondeau
Subject: Re: [Discuss-gnuradio] Strange output of "0" at the terminal
Date: Thu, 23 Feb 2012 10:40:40 -0500

2012/2/23 Wu Ting <address@hidden>
Hi! Thank you for your response. I've kept working on this problem for two
days, but still cannot find a way to solve it.

I simplified the program and have determined that the 'O' is produced is
this while loop:

while msgCount<10000:
   msg = tb.queue.delete_head()
   payload = msg.to_string()
   f.write(payload)
   msgCount += 1

I also tried to make it sleep for a short time after each operation:

while msgCount<10000:
   msg = tb.queue.delete_head()
   sleep(0.00001)
   payload = msg.to_string()
   sleep(0.00001)
   f.write(payload)
   sleep(0.00001)
   msgCount += 1

Two quick things. First, the tb.queue.delete_head() is a blocking call, so it will wait until there is a message to process. You don't need to sleep. Adding a sleep call here is probably only making things worse since you're already not keeping up with the samples. Second, the sleep() call is generally only accurate to about ~10 ms, but you're asking it to sleep for 10 us. I'm not sure if it rounds up or down. Worse case, you're making the loop sleep for about 30 ms total; best case is you actually aren't pausing at all.

Tom


reply via email to

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