Можно ли это выполнить атомарно?

Я хотел бы знать, можно ли обеспечить атомарное выполнение строки , учитывая, что она может выполняться как ISR и основной контекст. Я работаю над ARM9 (LPC313x) и использую RealView 4 (armcc).

foo() { 
  ..
  stack_var = ++volatile_var; // line
  ..
}

Я ищу любую процедуру вроде _atomic_ для C166 , код прямой сборки и т. д. Я бы предпочел не отключать прерывания.

Большое спасибо.

5
задан starblue 26 March 2011 в 20:23
поделиться