Атомарное выполнение (англ. atomic execution) — это концепция в программировании, означающая выполнение операций в таком режиме, что они не могут быть прерваны или разделены на части. С точки зрения других потоков выполнения или процессов, атомарная операция выглядит как неделимая: либо она выполняется целиком, либо не выполняется вовсе, промежуточных состояний быть не может.
Эта концепция особенно важна в многопоточном программировании и при работе с [[Критическая секция (critical section)|критическими секциями]], где необходимо обеспечить, чтобы важные операции с общими ресурсами (например, с изменением общих переменных или структур данных) не были прерваны или не пересекались с аналогичными операциями в других потоках. Это предотвращает появление [[Гонка данных и Состояние гонки (Data Race and Race Condition)|гонок данных (англ. data races)]] и других проблем синхронизации.
Примером атомарной операции в контексте базовых операций с памятью может служить чтение или запись в переменную типа `int` на многих платформах. Однако, стоит заметить, что атомарность определённых операций может зависеть от архитектуры процессора и размера данных. Для сложных операций, таких как обновление нескольких переменных или выполнение операций с коллекциями данных, атомарность достигается с использованием механизмов синхронизации, например, блокировок или транзакций.