Najprostszą metodą jest zapobieżenie jakiejkolwiek zmianie kontroli procesora w obrębie sekcji krytycznej. W systemach z jednym procesorem może to zostać zrealizowane poprzez uniemożliwienie przerwań na wejściu do sekcji krytycznej, unikanie wywołań systemowych, które mogą spowodować przełączanie kontekstu w obrębie sekcji i przywracanie przerwań do ich poprzedniego stanu na wyjściu. Każdy wątek egzekucji wchodzący do dowolnej sekcji krytycznej gdziekolwiek w systemie, dzięki tej implementacji, uniemożliwi jakiemukolwiek innemu wątkowi, włącznie z przerwaniem, uzyskanie dostępu do procesora, a co za tym idzie, wejście do jakiejkolwiek innej sekcji krytycznej (a nawet dostęp do jakiegokolwiek kodu), dopóki oryginalny wątek nie opuści sekcji krytycznej.

Takie siłowe podejście może zostać rozwinięte przez użycie semaforów. Aby wejść do sekcji krytycznej, wątek musi zdobyć semafor, który uwalnia opuszczając sekcję. Inne wątki nie mogą wejść do sekcji krytycznej w tym samym czasie co oryginalny wątek, ale mogą uzyskać kontrolę nad procesorem i wykonać inny kod, włącznie z innymi sekcjami krytycznymi, które są chronione przez inne semafory.