Please enable JavaScript to view this site.

Thread Validator Help

Navigation: The User Interface > Settings > Global Settings > Data Collection

Lock Callstacks

Scroll Prev Top Next More

 

The Lock Callstacks tab allows you to specify the types of data that will be collected for display by Thread Validator.

 

 lock-callstack-settings

 

Lock Callstacks

 

The summary and overview information gathered with the Collect settings is very useful and has a relatively low impact upon the performance of the target application.

 

In some circumstances the information collected is enough to diagnose various threading problems, but other times you'll need more data.

 

Many threading problems are much easier to diagnose if a callstack is also associated with the data. Callstacks allow source code inspection and a greater level of understanding of the exact nature of the problem.

 

Thread Validator can store the most recent callstack or all callstacks associated with critical sections and wait events, contentions and recursions.

 

Information is stored on a per thread basis. If for example, a deadlock occurs, you can see which critical section was locked or waiting, and where this happened.

 

Collect callstacks for critical sections and waits instructionStep collect the most recent callstacks for each of the checked items below, or not at all.

 

note Collecting callstacks can cause significant drops in performance depending on the nature of the target application.

 

 

Keep all callstacks for...

 

critical sections and waits instructionStep keep all callstacks per critical section so that analysis of the various callers can be performed

 

contended locks instructionStep collect all lock contention callstacks

 

recursing locks instructionStep collect all lock recursion callstacks

 

note Keeping all callstacks causes an even larger performance drop and increase in memory usage. It's recommended that all these option are only checked if you have a need for the information about all callstacks.

 

 

Reset All - Resets all global settings, not just those on the current page.

 

 

Reset - Resets the settings on the current page.