DAQFactory.exe process


trisol

Recommended Posts

We are using DAQ 5.79a build 1574.

When shutting down DAQFactory the application ends but the DAQFactory.exe process is still reporting as running in the task manager - processes. A subsequent start of DAQFactory causes all sorts or issues with com ports etc. After manually ending the DAQFactory.exe process and then restarting DAQ all works fine again. This is replicable every time.

In our ctl we start two continuous local threads in our protocols for two serial devices, another continuous thread that performs some regular functions and some other threads that run occassionally but not continuously.

I disabled the start of the serial-protocol thread, stopped any other thread I know of and then exit DAQFactory but the same occurs - DAQFactory.exe process remains.

We also put stoplocalthread in the OnUnload event in the protocol, stopallsequences and stopthread in a sequence "OnShutDown" - no luck.

The same occurs on several PCs running the same ctl document.

Opening and closing DAQFactory without loading our ctl stops the DAQ process OK. So I think it is definately something we do in our ctl.

I ran out of ideas how to get to the bottom of this - any tips? - Thanks

Link to comment
Share on other sites

First, upgrade to the latest.

Next, try starting the app in safe mode, then quit and see if it does it

Next, try starting the app, but then quit all but one thread and see if it does it. Repeat for each thread until one does it. If they all do it, then adjust your code so the threads don't start automatically, and manually start one and quit and see if it still does it.

When I say "thread" I mean sequence or local thread. Also remember that channel timings are a thread too, so if you have stuff in a channel event, it would run in a secondary thread.

Link to comment
Share on other sites

Thanks for the tips.

I traced it down to the serial device protocol where we start a local thread with the on load event that handles the serial receive and assumed that we should stop this local thread on the unload event. We learned now that this is not the case.

The DAQFactory process keeps running assumingly because the serial unload event sequence keeps trying to stop a thread that has already been stopped by the shutdown.

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.