Błędy ABA, takie jak ten, są trudne do śledzenia.
Obejścia problemu Wracając do przykładu Mańka i jego walizeczki, czy Maniek mógłby coś zmienić?
Jest wiele sposobów, dzięki którym Maniek mógł zapobiec temu zdarzeniu, nawet nie otwierając walizeczki. Po pierwsze, mógł zastosować łańcuszek, którym by przypiął walizeczkę do siedzenia. W takim przypadku Albert musiałby go przeciąć, a Maniek, słysząc przecinanie, wszcząłby alarm. Można to porównać do działania instrukcji LL/SC na niektórych procesorach. Innym rozwiązaniem mogłoby być zanotowanie numeru seryjnego prawdziwej walizeczki i sprawdzanie numeru za każdym razem, gdy się ją straci na pewien czas z zasięgu wzroku. Ten sposób to działanie podwójnej instrukcji CAS. Automatyczne odśmiecanie pamięci bądź hazard pointer radzą sobie z tym problemem przez upewnienie się, że na świecie nie istnieje druga taka walizeczka jak Mańka. Jeśli Maniek, jego szef lub ktokolwiek inny opiekujący się walizeczką uzna, że już jej nie potrzebuje, to jest ona niszczona. Dopiero wtedy, i tylko wtedy, można utworzyć nową walizeczkę, która wygląda tak samo.
Poniżej przedstawione są przykłady, jak w kodzie zrealizować powyższe pomysły.