09-02-2016 11:47 AM
Greetings all,
I have a problem with running two seperate cases as shown in attached .vi.
One case has a loop in it. Once it starts, the other seperate case does not respond to Cmds.
I have made a test file which is a simplified version of my customers code.
By probing I see that the Queue is getting fed but the lower loop is not de-queueing.
Any suggestions?
09-02-2016 11:52 AM
Watch the code in execution highlighting mode and apply the "data flow paradigm" and you will see the issue.
Ben
09-02-2016 12:42 PM
09-02-2016 01:05 PM
Yes,
I am seeing the problems and do realize it is the inner loop locking it. This is a replica of a customer requirement. I may be able to find another way but the inner loop of 2 must keep running while loop one sends out cmds ~2 seconds or so.
The Labview compiler or run-time knows that inner loop 2 is locked AND will not let loop one respond.
09-02-2016 01:11 PM
Move it to another loop and add another queue, so you hve one for each slave loop OR use a notifier?
Ben
09-02-2016 01:55 PM
Yeah, each of your tasks should be in seperate loops. You could just make another queue to talk to the new loop. You could also use User Events to send the message to multiple locations, but that might be a little too big of a change.