Bariera pamięci – punkt w programie, w którym wymusza się na systemie komputerowym zsynchronizowanie zawartości pamięci, tj. uszeregowanie wszystkich zapisów i odczytów. Jest to potrzebne, ponieważ niektóre mikroprocesory w celu uzyskania lepszej wydajności nie uaktualniają od razu zawartości pamięci głównej lub podręcznej, np. zastępując powtarzające się zapisy pod ten sam adres w jedno, opóźnione, odwołanie do pamięci.
Bariera pamięci jest realizowana przez specjalną instrukcję procesora.
Bez zastosowania bariery może dojść do sytuacji, gdy wątki lub procesy odwołując się do tego samego adresu pamięci odczytają zupełnie inne dane, co będzie błędem.
Specyficzne realizacje niskopoziomowe Do realizacji bariery pamięci stosuje się specjalne instrukcje procesora, które wymuszają zsynchronizowanie zawartości wybranego fragmentu pamięci podręcznej z główną. Szczegółowe zachowanie podczas obsługi bariery zależy od architektury procesora.