Als de aanroepen naar SP1 gevolgd door SP2 atomair zijn, moeten ze worden gecombineerd in T-SQL. Of de c#-transactie verliezen. U verlengt de transactie onnodig met retourvluchten.
Ook, waarom heb je UPDLOCK op SP1UPDLOCK maar niet voor SP1? Ik kan niet zien waarom. Als het probleem vergrendelingshints zijn, gebruik ze dan niet. Als iets serialiseerbaar is (waarom?) Maak er dan weer een enkele atomaire aanroep van
Merk op dat de standaardwaarde toch LEES COMMITTED is
Tot slot, bedoel je "semafoor" niet op slot? sp_getapplock gebruiken regelt de stroom door de code zonder sloten op de gegevens te gebruiken