Jump to content

Strange queue/debugging behavior probably related to race conditions


_Y_

Recommended Posts

Hi all,

 

I got a strange queue behavior that is probably related to race conditions. The problem is eliminated (a way around is found), so there is no need in a quick solution. However, I would be happy to understand reasons for such a phenomenon.

 

BD of the “problematic†VI is attached. The queue size is limited to 1. The program consists of multiple asynchronous processes.

 

Execution reaches the Enqueue Element node than stops. The timeout never happens; the program hangs. However, there is more. If I try to execute the VI step-wise, everything works fine until the execution enters the internal Case Structure. When it enters, three Stepping buttons become disabled.

 

If I try to decompose the program, i.e. to use the same VI in a simple single-process program, both problems disappear.

 

Have you encountered such a strange behavior? Any ideas that can help to the poor creature (me) to avoid sleepless nights?

post-15502-0-29248800-1414139001_thumb.p

Edited by _Y_
Link to comment

To me this is not a race condition. A race condition would for example cause the dequeue function to be called before the enqueue function while you intended otherwise. But the fact that a function doesn't time out while it's supposed to is a bigger issue...

Link to comment

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now
×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.