cz.vutbr.fit.healing
Class HealingNewMutex

java.lang.Object
  extended by cz.vutbr.fit.healing.Healing
      extended by cz.vutbr.fit.healing.HealingNewMutex

 class HealingNewMutex
extends Healing

Healing method which uses a new explicit lock to guard the variable. A lock si obtained every time the variable is accessed. The healing is based on the idea that lock is not released within the critical sections which should be done atomicaly.

Author:
zdenek

Constructor Summary
HealingNewMutex()
           
 
Method Summary
protected  void afterNormalAccess(RDVariable rdv, RDThread rdt)
          Called after normal access to the variable.
protected  void beforeNormalAccess(RDVariable rdv, RDThread rdt)
          Called before normal access to the variable.
protected  void enterCriticSection(RDVariable rdv, RDThread rdt)
          Called before enter the critical section.
protected  void leaveCriticSection(RDVariable rdv, RDThread rdt)
          Called after exit the critical section.
 
Methods inherited from class cz.vutbr.fit.healing.Healing
endHealing, finalHealing, getHealingMethod, initHealing, isHealedVariable, startHealing
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

HealingNewMutex

HealingNewMutex()
Method Detail

enterCriticSection

protected void enterCriticSection(RDVariable rdv,
                                  RDThread rdt)
Called before enter the critical section.

Specified by:
enterCriticSection in class Healing
Parameters:
rdv - critical variable

leaveCriticSection

protected void leaveCriticSection(RDVariable rdv,
                                  RDThread rdt)
Called after exit the critical section.

Specified by:
leaveCriticSection in class Healing
Parameters:
rdv - critical variable

beforeNormalAccess

protected void beforeNormalAccess(RDVariable rdv,
                                  RDThread rdt)
Called before normal access to the variable.

Specified by:
beforeNormalAccess in class Healing
Parameters:
rdv - critical variable

afterNormalAccess

protected void afterNormalAccess(RDVariable rdv,
                                 RDThread rdt)
Called after normal access to the variable.

Specified by:
afterNormalAccess in class Healing
Parameters:
rdv - critical variable