La réponse est là:
Ce n'est pas une histoire de login, c'est une histoire de requêtes. Si tu as 3 connexions (avec le même login ou pas peu importe) qui exécutent chacune un UPDATE ou un DELETE sur la même table avec les mêmes critères, la première va obtenir le latch et les autres vont attendre. Et si tu as 150 connexions qui font la même chose c'est pareil. Tout est sérialisé, parce que toutes tes connexions sont en attente exactement sur la même ressource. Il faudrait que chaque connexion utilise des requêtes différentes avec des prédicats différents pour verrouiller des lignes différentes, et permettre à plusieurs connexions de travailler en même temps sur des jeux de données différents. C'est pour ça que faire un outil de charge en Transact est compliqué, il faut un jeu d'APIs plus riche pour pouvoir simuler une vraie activité.
Le nombre maximum de requêtes simultanées est cappé par max worker threads de toutes façons. Et en général, on ne l'atteint pas.
HTH. David B.