|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectcz.vutbr.fit.healing.Healing
cz.vutbr.fit.healing.HealingSemaphore
class HealingSemaphore
Healing method which uses a new semaphore to guard the variable. Semaphore simulates a lock but without an ownership problem. Semaphore can be released by a different thread than the one who obtained the semaphore. A lock is 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.
Constructor Summary | |
---|---|
HealingSemaphore()
|
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 |
---|
HealingSemaphore()
Method Detail |
---|
protected void enterCriticSection(RDVariable rdv, RDThread rdt)
enterCriticSection
in class Healing
rdv
- critical variableprotected void leaveCriticSection(RDVariable rdv, RDThread rdt)
leaveCriticSection
in class Healing
rdv
- critical variableprotected void beforeNormalAccess(RDVariable rdv, RDThread rdt)
beforeNormalAccess
in class Healing
rdv
- critical variableprotected void afterNormalAccess(RDVariable rdv, RDThread rdt)
afterNormalAccess
in class Healing
rdv
- critical variable
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |