Thread Validator provides a command line interface to allow you to perform automated critical section data collection.
To run 32 bit thread validator run C:\Program Files (x86)\Software Verify\Thread Validator x86\threadValidator.exe
To run 64 bit thread validator run C:\Program Files (x86)\Software Verify\Thread Validator x64\threadValidator_x64.exe
Potential uses for automated critical section analysis are:
•In the regression test suite to ensure critical section behaviour
•In unit testing to ensure critical section performance of a certain level
•Quality assurance
Results from thread data collection sessions can be merged to form an aggregate result.
Typically, command line options allow Thread Validator to run by specifying:
•the target program to run
•arguments to pass to the target program
•the working directory to run in
•whether to run with or without the user interface
•a baseline session to compare with
•where and how to save results
•what to include or exclude from hooking
•how to merge results
Usually Thread Validator would exit between automated tests, but it can be made to stay running if necessary.
There are a few basic rules to remember when using the command line arguments:
•separate arguments by spaces
•quote arguments if they contain spaces
•some arguments are only useful in conjunction with others
•some arguments are incompatible with others
If your command line is very long, consider using -commandFile to specify a command file for your arguments.
Any unrecognised arguments found on the command line are simply ignored, whether or not they are prefixed with a hyphen.
Arguments intended for your program will not conflict with the Thread Validator arguments in this manual as you should use -arg (or -allArgs) to redirect them to your program.
If you find creating command lines from nothing to be a bit daunting we've created a Command Line Builder tool to help you build command lines.
You'll still need to complete some details, but the builder will help prevent you making some mistakes.
Command Lines and Floating Licences
Thread Validator works from the GUI and from the command line with all types of software licence (floating licences and non-floating licences).
When floating licences are being used Thread Validator will wait to acquire a floating licence before proceeding to process the command line options.
There are no options to:
•Checkout a floating licence
•Release a floating licence
•Query for available licences
These options are managed automatically by Thread Validator, there is no need for such options to be manually controlled from the command line.