> -- captain cobalt писал(а):
> Каким образом обеспечивается эта атомарность?

Атомарность не вообще для всего компьютера, а как эксклюзивный доступ к данному конкретному объекту в методе которого вызван AWAIT. Обеспечивается она в Aos BlueBottle самой средой времени исполнения. Можно эмулироватьмониторами.
## Код:
```
PROCEDURE DoSmth;
BEGIN {EXCLUSIVE}
  AWAIT(condition);
  ...
END DoSmth;
```

Если Вы знакомы с C#, то вот аналог с использованиемМонитора:
## Код:
```
void DoSmth ()
{
  System.Threading.Monitor.Enter(this);
  while ( ! condition) System.Threading.Monitor.Wait(this);
  ...
  System.Threading.Monitor.PulseAll(this);
  System.Threading.Monitor.Exit(this);
}
```

или, с использованием синтаксического сахара lock, так:
## Код:
```
void DoSmth ()
{
  lock (this)
  {
    while ( ! condition) System.Threading.Monitor.Wait(this);
    ...
    System.Threading.Monitor.PulseAll(this);
  }
}
```
