A B C
| | |
o----- | |
| \ | |
| ------o |
| | |
| o----- |
| | \ |
| | ------o
| | |
| | ------o
| | / |
| o----- |
| | |<------Not locked!...
| o----- |
| | \ |
| | ------o
| | |
| | ------o
| | / |
| o----- |
| | |
| -----o |
| / | |
o------ | |
| | |
A, B and C are objects, and I draw the thread of control of an
interaction initiated from A.
If I have this scheme in a sequential program of mine, and I just
"distribute" C, there isn't anything anymore which insures that its
state is not changed between my two accesses. I.e. I have broken the
semantics of my initial program!