LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Deadlock monitor for LabVIEW?

Does anybody know about a tool that can help debug deadlocks in a LabVIEW application?

 

We're developing a complex multithreaded system in LabVIEW and every once in a while we encounter design bugs due to threads waiting for each other to release a reference, i.e., leave a DVR in place structure. If it's a "cyclic waiting" then we have a deadlock which can be very tricky to debug. By debugging I mean to identify the threads that are in the cycle and the locks they hold.

 

Thanks,

 

Peter

 

0 Kudos
Message 1 of 3
(3,429 Views)

Possibly the Desktop Execution Trace Toolkit.  I have not had a lot of time to see if it can do what you are asking for though.


GCentral
There are only two ways to tell somebody thanks: Kudos and Marked Solutions
Unofficial Forum Rules and Guidelines
"Not that we are sufficient in ourselves to claim anything as coming from us, but our sufficiency is from God" - 2 Corinthians 3:5
0 Kudos
Message 2 of 3
(3,377 Views)

Dear Peter,

 

some operating systems and programming languages contain tools or functionality for deadlock detection and prevention but LabVIEW is not one of them. As crossrulz suggested the Desktop Execution Trace Toolkit can be used to keep track of resource allocations. You can even generate your own trace events (http://zone.ni.com/reference/en-XX/help/372641C-01/lvdettmerge/generateusertraceevent/) to trace the state and operation of your application.

 

Regards,

Dániel Fülöp
Field Application Engineer (CLA, CTA)
National Instruments
0 Kudos
Message 3 of 3
(3,278 Views)