Getting Started

The tutorials use the nativeExample.exe sample application to demonstrate threading errors and the detection of those errors.


The project file is nativeExample.vcxproj.

If you are using Visual Studio 6, the project file is nativeExample.dsp.


The nativeExample.exe application is shipped as a project with source code.

The project can be found in the nativeExample directory in the same directory that Thread Validator was installed in.

Please compile all configurations of the sample application before continuing the tutorial. 


The example application provides a few simple functions and user interactions to demonstrate the threading error detection features of Thread Validator. The tutorials will demonstrate detecting various types of threading errors and how to use the various data displays of Thread Validator.

The example application provides the following threading errors:

  • Deadlock using 2 threads.
  • Deadlock using 3 threads.
  • Potential deadlock caused by an infinite wait.
  • Potential deadlock caused by incorrect locking strategy.
  • Entering an uninitialised critical section.
  • Leaving an unlocked critical section.
  • Deleting a locked critical section.
  • Leaving a critical section in the wrong order.

The tutorials describe each error and how to use Thread Validator to detect and fix the error.

Fully functional, free for 30 days