06-27-2017 07:59 AM
I have a home brewed application which loads data files and produces quite complex output patterns as a real-time stimulation signal. This app is able to load a sequence of scenarios and work it's way through them, but it's essentially doing the same thing repeatedly. It just works through an array of setup conditions. I made some changes recently and something is not quite right.
The problem I'm having is that the app stops working after an undefined period. I can close the app, reopen it. No difference. I can load DAQmx and reset the card, no difference. I can load another version of the app to try to access the ports form another binary, no joy. The only thing I have found that will clear the issue is to cold boot the PC.
I'm assuming at this point that the most likely issue would be open handles or something like that, failing to cleanly close the DAQ channels, etc.
Firstly does this scenario sound familiar to anyone? Secondly is there a way to list all open channels in the LabView platform, thus work out what is being naughty... Failing that is it possible to force the close of all channels, either in DAQmx or programmatically..
06-27-2017 08:30 AM
It would help if you posted your code to see how you are doing this.
You made "some changes", what kind of changes did you make?
I've never had problems with DAQmx stopping working after a period of time. Except in one situation where someone had programmed a subVI for me where they opened a DAQmx task and read data, but never closed it. So every run of the subVI used up resources until after a while, the whole PC crashed with a blue screen. Once I found that and fixed it, know more problems.
You don't have has severe of a symptom as a blue screen, but I would still look to make sure you aren't continually creating tasks and failing to close them.
06-27-2017 09:26 AM
Hi Raven,
I'm afraid I can't post the code, otherwise I would have.
The scenario you describe sounds pretty much like what I suspected might be the case, hence my question about whether there is a way to get a list from the LabView platform regarding all the open tasks, etc. My gut feeling is this is the same scenario you had, my issue is finding the culprit and it would be much easier with some diagnostics. Do they exist? IF they do all I need to do is start up, shut down and see what remains!
It's interesting it used to cause a BSD, that's pretty poor handling so I guess a lock up would be considered progress... 😉
Cheers
Rob
06-27-2017 11:38 AM
I have also had similar issues with USB DAQ boards where Windows randomly decides to turn off a USB hub to save power. You can turn that feature off in the Device Manager.
As far as finding leaked references, you can try using the Desktop Execution Trace Toolkit. I found some File reference errors with that when I was just messing around with it one time.