
|
Available Workflow Actions
|
|
If you were logged in you would be able to see more operations.
|
|
|
|
|
| Component/s: |
Debugger
|
| Affects Version/s: |
None
|
| Fix Version/s: |
None
|
|
|
Original Estimate:
|
Unknown
|
Remaining Estimate:
|
Unknown
|
Time Spent:
|
Unknown
|
|
Assume, you have a method, which can get called recursively (e.g. a LayoutManager). The code you are debugging is an iteration:
public void layoutContainer(Container target) {
for (Iterator it = getAllComponents(); it.hasNext(); ) {
final Component comp = (Component)it.next();
layOutComponent(comp);
}
}
Your current execution point is at the for()-line and you want to press, e.g., F9 to iterate over all components. Now I want to set a temporary breakpoint at the layOutComponent()-line. Setting this breakpoint remembers the call-stack. When the breakpoint is hit the next time, it will verify the call-stack with the remembered one and it only stops, when it matches or lost the method, e.g. returned or threw an exception. In the latter case, the breakpoint automatically will be removed or disabled.
|
|
Description
|
Assume, you have a method, which can get called recursively (e.g. a LayoutManager). The code you are debugging is an iteration:
public void layoutContainer(Container target) {
for (Iterator it = getAllComponents(); it.hasNext(); ) {
final Component comp = (Component)it.next();
layOutComponent(comp);
}
}
Your current execution point is at the for()-line and you want to press, e.g., F9 to iterate over all components. Now I want to set a temporary breakpoint at the layOutComponent()-line. Setting this breakpoint remembers the call-stack. When the breakpoint is hit the next time, it will verify the call-stack with the remembered one and it only stops, when it matches or lost the method, e.g. returned or threw an exception. In the latter case, the breakpoint automatically will be removed or disabled. |
Show » |
|
If you step like this, it will ingore all breakpoint hits occured deeper in the call stack from the current position.