mike5 Posted April 3, 2012 Report Share Posted April 3, 2012 (edited) Hi all, a while back I was thinking about the how bad the LabVIEW debugging really is. The single stepping is a nightmare, as soon as your project has more than 3 VIs. Add to this the re-entrant VIs and multiprocess application, and you are soon lost in a sea of windows. I even posted this idea on the idea exchange, but it is not really thought through. So I was thinking - why don't we all come up with a good solution to this problem. Something that would address most of our needs and propose solutions for these problems that we would like to see. THEN we submit this proposal to the idea exchange and also promote it with our kudos. How does that sound? So, my problems are: too many windows open at once.Each function opens 2 windows, front panel and block diagram. Once you step through the function, the windows remain open. You don't have a clear idea where you came from (the trace in the drop-down is not really helpful). You don't have a quick access to the input parameters. not seeing all the blocked threads in a multiprocess application.If you set a break point which gets hit in multiple processes, LabVIEW opens all those windows for you, and it only adds to the clutter. You start debugging one instance, and all the other instances are blocked. Even if you click "continue" in those other instances, the windows stay open. If one of them hits a break-point again, you don't know this. In short, it's a mess... (This is not indented in the editor) The best way to overcome all this that I can come up with is and overview panel. It would contain a hierarchical list of all functions (call stack) all VIs where the execution is currently blocked would be marked all VIs that contain a breakpoint would be marked you could easily get to the input parameter values for each function you could disable breakpoints in some threads/processes only concentrating on the instance that is of interest to you you could combine this with an "auto-close" functionality that would automatically close the windows that were not explicitly open (like parents of function you are currently tracing) show the watched wires (to combine this with the problems of the watch window) Unfortunately I currently don't have the time to create a mockup picture, but I hope my description is good enough to get us started. Please add your own ideas and discuss. Thanks, Mike Edited April 3, 2012 by mike5 Quote Link to comment
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.