0 items - $0.00
Follow softwareverify on Twitter

Analyse threading problems quickly and easily

Download Eval
x86

Download Eval
x64

Buy x86
Buy x64

Single user x86: $499

Single user x64: $749

C++ Thread Validator C++ Thread Validator CD Picture

Thread Validator - Feature List

C++ Thread Validator has many useful features not found in other synchronization analysis tools.

Deadlock Detection

  • Detect deadlocks
  • Detect potential deadlocks
  • Detect bad lock strategy
  • Detect miscellaneous errors:
    • Entering uninitialised critical section
    • Leaving an unlocked critical section
    • Deleting a locked critical section
    • etc
  • Get complete stacktraces for deadlocked threads

Data Views

  • Locks summary view. Shows summary information for each critical section in the application. Colour coding indicates various error conditions
  • Per thread locks view. Shows information about each critical section for each thread in the application. Colour coding and text messages indicates various error conditions
  • Current locks view. Shows information about locked and waiting critical sections for each thread in the application. Colour coding and text messages indicates various error conditions
  • Active objects view. Shows information related to the creation, usage and destruction of synchronization objects. Miscellaneous locking errors are reported on this tab
  • Analysis view. View information on all critical sections and their related objects and actions
  • Threads view. Graphically view the state of the threads in your application
  • Objects view. What types of objects are in use and how many
  • Diagnostic messages. For detecting unforseen errors in the instrumentation. If things are not behaving as you expect, the answer may be here

Data searches

  • Lock Order Display. Displays locks in the order acquired
  • Synchronization object search
  • Synchronization object query
  • Synchronization address query
  • Function query
  • Single thread critical section detector
  • Display stack traces for all threads, including deadlocked threads. This option uses proprietry stack walking algorithms to obtain stack traces that, if viewed in the debugger, would be very short

Data Management and Filtering

  • Filter synchronization data by thread id.

Miscellaneous

  • Support for software with no debugging information, via exported symbols, def files, ordinals, map files, and browser (bsc) files.
  • Very configurable, almost all options are configurable by the user. Includes an option to reset to the default settings.

Startup

  • Start by injecting into running process.
  • Start by launching a process and injecting into that process at startup.
  • Start by waiting for a process to start and injecting into that process at startup.
  • Link to service binary to use C++ Thread Validator with your NT Service.

Instrumentation

  • Instrumentation is fast, a few seconds, not tens of minutes.
  • Runs at nearly full speed of non-instrumented application, not 2 or 10 times slower.
  • Instrumentation can be customized at the DLL level or down to the function level, as you require. Completely flexible as to which functions you choose to instrument.

No need to rebuild

  • No need to rebuild or relink your application.
  • Minimal compile and link to use C++ Thread Validator with NT services. This is required to because the windows security model does not allow process handles to be opened on service processes by processes other than the service.

Compatibility

  • Works with the following compilers:
    • Microsoft Visual Studio 2017, 2015, 2013, 2012, 2010, 2008, 2005, .net 2003, .net 2002, 6.0
    • Microsoft Visual C++
    • Microsoft Visual Basic 6
    • Intel Performance C++ compiler
    • Embarcadero C++ Builder
    • Borland free command line tools C++ compiler
    • MinGW gcc/g++ C/C++ compiler
    • QtCreator
    • Metrowerks CodeWarrior for Windows 8.0
    • Embarcadero Delphi
    • Contact us if your compiler is not listed

Operating Systems

Operating System32 bit64 bit
Windows 10YesYes
Windows 8YesYes
Windows 7YesYes
Windows 2008YesYes
Windows VistaYesYes
Windows 2003Yes
Windows XPYes
Windows 2000Yes
Windows NT 4Yes

Please note that the 32 bit C++ Thread Validator will work on 64 bit operating systems (with 32 bit applications)

Go to Top ^^