I have a program that waits until it receives a message from the host before loading a configuration. This configuration has many threads and allocates hardware resources. If I send a command to restart the program it will close threads and go back to the top to wait for another start command. If I send a command to close, it does the same but exits instead of going back to the top. If I try to deploy a new DLL the PXI will crash most of the time after closing, but somehow it doesn't crash if I restart (back to the top), then delete active dll, then deploy a new dll and restart PXI. If I run the program in the development environment and press close, sometimes CVI will throw up a box saying some threads are still active, but I don't know which ones are. I wrote down every thread and every resource I allocate, and then made sure I had closing code for each.
Any ideas on how I can diagnose this?
Programming Data Acquisition and Control in Measurement Studio and Labwindows/CVI