Hello, (sorry for my english, i will try to do my best)
I think the management of Breakpoints and Probes is not logical and not enough powerful.
I propose a new approach.
LabVIEV would need a real debugging environment, much more powerful, like this :
1st : Probe management is not logical
Why ? A probe is only to watch a value on a wire (not to stop the code)
2nd : To stop the code, the Breakpoint, with ou without condition(s) ... (conditional or unconditional Breakpoint)3rd : Conditional Breakpoint:
or / and according condition()s on other wires. (very powerful feature)
(Normal, before using a value, we must first take it.)
(As the current version of LV)
The breakpoint Manager highlights the Breakpoint on which the right click has been made.
Inside the Breakpoint Manager, we can see the corresponding Breakpoint via "Find on Diagram".
Although some of your idea has merit, some parts of it are incorrect. You can do conditional break in current LV with any formula you desire by writing a custom probe.
Kudos for the rest.
yes, but I have not said It was not possible to build a custom conditional break with a Probe.
- the function of a probe is not to break the code.
- with current version of LV, It is not possible to use a different wire than the one where the probe is! (to build the break condition)
be able to use different wires to build the breakpoint condition (... not the Probe condition)
The real power is closely related to this last possibility. - It would be much more easy and intuitive to use a language to do that, like into a formula node, with binary operators.
all this is just a set of ideas to improve the debugging environment of LV.There are ways to make it much more powerful, and much more intuitive for users.
thank you for Kudos
The most important change would be,Be able to use more than only one wire to build the break condition.All VI probes should be present inside the starting diagram of the "New Custom Probe"
... not only the probe of the wire onto which the break will be programmed... but all other too.
this would be a huge improvement.
Interesting idea. I would add that if you get to this level of sophistication, you should expect users to want to have the possibility to combine the values of probes in DIFFERENT VIs to compute the value of a conditional breakpoint.
As in: "(if my iterative calculation result in VI_1 is smaller than 1) and (if the loop iteration in VI_2 is >100) then pause execution".
This being said, even without this additional level of complexity, with the inherent parallelism of LabVIEW, your suggested functionalities might result in interesting race conditions (something ALWAYS happens during debugging but NEVER otherwise, or inversely)...
It may be illogical, but I find it quite convenient to "upgrade" a breakpoint to a conditional breakpoint.
"with the inherent parallelism of LabVIEW, your suggested functionalities might result in interesting race conditions
(something ALWAYS happens during debugging but NEVER otherwise, or inversely)"
very good comment, you are right. I had not thought of that!I think this parallelism of LabVIEW makes my proposals unusable.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.