The term Inheritance Anomaly has been introduced into Object-Oriented
Concurrent Programming (OOCP). It has also been shown how different ki
nds of synchronization mechanisms fall into one of the three anomalies
. Guarded Methods are shown to be an inadequate tool to solve either H
istory-only Sensitive Anomaly or Modification of Acceptable States. Th
is paper argues that any of the anomalies can be solved by Guarded Met
hods when a suitable semantics is found for it. The main contribution
of the paper is the exposition that the concept of Guarded Methods, pr
ovided Guarded Methods are interpreted as Conditional Critical Regions
, is an adequate language tool for expressing synchronization constrai
nts in OOCP. Guarded Method based solutions are given for the above me
ntioned two cases of anomalies.