• Sql Server 中如果使用TransactionScope开启一个分布式事务,使用该事务两个并发的连接会互相死锁吗


    提问:

    如果使用TransactionScope开启一个分布式事务,使用该事务两个并发的连接会互相死锁吗?

    如果在.Net中用TransactionScope开启一个事务。
    
    然后在该事务范围内启动两个并发的线程,连接到数据库对同一张表加表级别的X锁并长时间持续占有,请问这种情况这两个线程的其中一个连接会Block住另外一个线程的连接吗?
    
    如果会,那岂不是两个数据库连接就算是在同一个事务中,也会发生死锁? 

    回答:

    #1:分布式事务中的两个数据库连接内部就是两个独立的事务,始终不存在真正的“一个事务有两个连接”,两个事务锁定冲突很正常啊。

    #2:以上情况,其实对于数据库来讲, 是2个不同的进程.

    也就是说分布式事务中的多个连接是会发生相护阻塞和死锁的。

    原文链接

  • 相关阅读:
    position笔记
    IFE-33笔记
    IFE-31 笔记
    selectedIndex
    iFE-30 笔记
    基于select的python聊天室程序
    python select网络编程详细介绍
    (转载)centos yum源的配置和使用
    python 多进程使用总结
    python迭代器实现斐波拉契求值
  • 原文地址:https://www.cnblogs.com/OpenCoder/p/7144688.html
Copyright © 2020-2023  润新知