Das ist einfach eine Tabelle, die i.W. einen Schlüssel und einen Wert enthält.
Diese Tabelle kannst du ja mit einer Satzwartezeit von 1 Sekunde definieren.

Wenn du eine Ressource (z.B. Kunde) sperren willst, prüfst du, ob in dieser Tabelle der Satz bereits durch einen Eintrag gesperrt ist, ansonsten trägst du dich halt selber ein.
Das Ganze unter CommitControl, damit das eben sicher ist.
Beispiel:

if lesenForUpdate() = false;
if schreiben() = false;
// ein anderer war schneller
endif;
else;
UpdateSperre();
endif;
commit;

Machwas(); // Reminizenz an Dieter

deleteSperre();

Die Sperrmimik packt man am besten in eigene Programme mit eigener ACTGRP, damit man mit der eigenen Transaktion nicht in Konflikt kommt.

Literatur zu Anwendungslogik gibts da glaube ich nicht .