Sun Studio 12: Thread Analyzer User's Guide

1.4 The Thread Analyzer Usage Model

The following steps show the process by which you can troubleshoot your multi-threaded program with the Thread Analyzer.

  1. Instrument the program. See 2.2.1 Instrument the Source Code for more information.

  2. Perform an experiment and then repeat the experiment with varied factors such as different input data, a different number of threads, varied loop schedules or even different hardware. This repetition helps locate problems with non-deterministic roots.

  3. Establish whether or not the multi-threaded programming-conflicts revealed by the Thread Analyzer are legitimate bugs or benign phenomenon.

  4. Fix the legitimate bugs and repeat the experiment.

  5. If the Thread Analyzer reports new multi-threaded programming-conflicts repeat the previous two steps.