|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectcz.vutbr.fit.racedetector.RaceDetector
public class RaceDetector
The main class of the race detector. It takes care of initialization and finalization phase of the detection and implements ConTest listeners. It contains also some common global methods and fields which are used by other classes.
See package description for more info.
Nested Class Summary | |
---|---|
static class |
RaceDetector.DetectorImplementation
Available implementations of race detecting algorithms. |
static class |
RaceDetector.HealingMethod
Methods of healing: THREADS - Method based on the utilization of other processors (cores) in the system. |
static class |
RaceDetector.Operation
Read operation. |
Field Summary | |
---|---|
protected static AtomicityCollection |
atomicity
|
(package private) static boolean |
ATOMICITY
Turn on the atomicity. |
static java.lang.String |
ATOMICITY_FILE
file from which the setting will be taken |
(package private) static boolean |
ATOMRACE_IMMHEAL
Turn AtomRace to try avoid even the first occurence of the race. |
(package private) static boolean |
ATOMRACE_LEARN
Turn AtomRace to work in the first "learning" phase. |
protected static Detector |
detector
Instance of used detector. |
protected static RaceDetector.DetectorImplementation |
DETECTOR
Algorithm that will be used for race detecting. |
(package private) static boolean |
HEAL_VARIABLES
Enable the usage of a list of variables that should be healed from the beginning. |
(package private) static boolean |
HEALING
Enable the healing feature. |
static RaceDetector.HealingMethod |
HEALING_METHOD
Method that is used to heal the Race. |
static java.lang.String |
HEALVAR_FILE
file from which the variables which should be healed immediately are loaded |
(package private) static boolean |
LOCK_DETERMINE
Enable Lock determination feature. |
(package private) static boolean |
NOISE
Enable the usage of noise injecting mechanism. |
(package private) static int |
NOISE_FREQUENCY
Frequency of noise injected by the RaceDetector in promile (0 - 1000). |
(package private) static boolean |
NOISE_PROGLOC
Enable the usage of a list of program locations that should be focused by noise injecting mechanism. |
(package private) static boolean |
NOISE_RANDOM
Enable the usage of random noise injecting mechanism. |
(package private) static boolean |
NOISE_VARIABLES
Enable the usage of a list of variablse that should be focused by noise injecting mechanism. |
static java.lang.String |
NOISELOC_FILE
file from which the program location which should be noised are loaded |
static java.lang.String |
NOISEVAR_FILE
file from which the variables which should be noised are loaded |
(package private) static boolean |
OMIT_VARIABLES
Enable the usage of a list of variables that should not be analysed. |
static java.lang.String |
OMITVAR_FILE
file from which the variables which should not be analysed are loaded |
(package private) static boolean |
OWNER_TRANSFER
It is common that initialization and use of objects are logically separated. |
static java.lang.String |
PROPERTIES_FILE
file from which the setting will be taken |
static java.lang.String |
RD_DIRECTORY
directory name with the race detector input files |
static java.lang.String |
VERSION
A string denoting the current version. |
Constructor Summary | |
---|---|
RaceDetector(RaceDetector.DetectorImplementation detectorType,
Detector detectorInstance)
Main constructor called by ConTest. |
Method Summary | |
---|---|
protected static java.lang.String |
getProperVarName(java.lang.Object instance,
java.lang.String varName)
Returns string representation of the variable - without instance (instance is needed for array processing). |
protected static java.lang.String |
getVarIdentifier(java.lang.Object instance,
java.lang.String varName)
Returns unique string representation of a variable. |
static void |
printDebug(java.lang.String text)
Used for printing debug info. |
protected static void |
printWarning(java.lang.String varIdentifier,
java.lang.String raceDescription)
Used for printing warnings. |
protected static void |
printWarning(java.lang.String varIdentifier,
java.lang.Thread thread,
java.lang.String programLocation,
java.lang.String details)
Used for printing warnings. |
static void |
setDetectorType(Detector det)
Set detector -(Eraser / AtomRace). |
static void |
setRunAsFail()
In the case of usage the AtomRace this method marks the run as the run where the error has been detected. |
protected static void |
updateArrayInfo(java.lang.Object instance,
java.lang.Object value,
int index)
Collect the information about array. |
protected static void |
updateArrayInfo(java.lang.Object instance,
java.lang.Object value,
java.lang.String varName)
Collect the information about array. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
public static final java.lang.String VERSION
public static final java.lang.String PROPERTIES_FILE
public static final java.lang.String RD_DIRECTORY
public static final java.lang.String ATOMICITY_FILE
public static final java.lang.String OMITVAR_FILE
public static final java.lang.String HEALVAR_FILE
public static final java.lang.String NOISEVAR_FILE
public static final java.lang.String NOISELOC_FILE
static boolean OMIT_VARIABLES
static boolean HEAL_VARIABLES
static boolean NOISE
static boolean NOISE_RANDOM
static boolean NOISE_VARIABLES
static boolean NOISE_PROGLOC
static int NOISE_FREQUENCY
static boolean OWNER_TRANSFER
static boolean LOCK_DETERMINE
static boolean ATOMRACE_LEARN
Otherwise it works in "detection" phase.
static boolean ATOMRACE_IMMHEAL
static boolean ATOMICITY
static boolean HEALING
public static RaceDetector.HealingMethod HEALING_METHOD
protected static RaceDetector.DetectorImplementation DETECTOR
protected static Detector detector
protected static final AtomicityCollection atomicity
Constructor Detail |
---|
public RaceDetector(RaceDetector.DetectorImplementation detectorType, Detector detectorInstance)
Method Detail |
---|
public static void setRunAsFail()
public static void setDetectorType(Detector det)
protected static java.lang.String getVarIdentifier(java.lang.Object instance, java.lang.String varName)
protected static java.lang.String getProperVarName(java.lang.Object instance, java.lang.String varName)
protected static void updateArrayInfo(java.lang.Object instance, java.lang.Object value, java.lang.String varName)
protected static void updateArrayInfo(java.lang.Object instance, java.lang.Object value, int index)
protected static void printWarning(java.lang.String varIdentifier, java.lang.Thread thread, java.lang.String programLocation, java.lang.String details)
protected static void printWarning(java.lang.String varIdentifier, java.lang.String raceDescription)
public static void printDebug(java.lang.String text)
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |