A lista de níveis de isolamento no SQL Server encontrada aqui afirma que os bloqueios de gravação adquiridos em uma transação são mantidos até o final da transação. No entanto, não menciona nada sobre quando esses bloqueios são adquiridos.
Os bloqueios são adquiridos por padrão no início de uma transação ou apenas quando são necessários? Se o último for verdadeiro, seria vantajoso, em grandes transações, executar operações de gravação o mais tarde possível, a fim de minimizar a quantidade de tempo que os bloqueios X são mantidos?
fonte