`
monushise
  • 浏览: 2165 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

多账户(大于2个)转账死锁问题

阅读更多
并发事务中,操作相同账户可能会引发死锁,我列举一个死锁问题,希望万能的网友帮忙想出个好的方案。
假如两个并发转账事务,涉及A/B/C  3个账户:
事务1,A向B转账,B向C转账:
   A->B   B->C
事务2,C向B转账
   C->B

事务1获取到了A、B账户行锁,
同时事务2获取到了C账户行锁,
此时 事务1想要再去获取C账户行锁,但是事务2获取到了C账户行锁,想要去获取B账户行锁,此时就发生了死锁,这种问题有什么好的解决方案,希望大家帮帮忙

若把转账改为序列化执行可以解决这个问题,但是会影响性能,不可取,有什么其他的巧的办法不
0
4
分享到:
评论

相关推荐

    天津科技大学--数据库系统试卷(A)及答案.doc

    例如,一次完整的转账操作就是一个事务,它包括从一个账户扣除金额和向另一个账户添加相同金额的操作。 ### 9. 日志文件的作用 日志文件是数据库恢复过程中非常重要的文件,它记录了事务执行的详细情况,包括事务...

    PV操作示例代码

    PV操作由两个原子操作组成:P(Wait)操作和V(Signal)操作,主要用于解决多线程环境中的资源竞争问题,确保并发执行的线程能正确地共享资源,避免出现数据不一致或死锁等问题。 P操作(Wait/Decrement): 1. 当...

    操作系统实验1-9.pdf

    例如,可以模拟一个银行转账的过程,创建两个线程代表不同的账户,其中一个线程从账户A扣款到账户B。如果没有同步机制,线程的交叉执行可能会导致资金数额的错误。通过实施互斥锁或信号量机制,可以确保当一个线程...

    操作系统中P、V操作实现进程的同步与互斥-2019年文档资料.pdf

    操作系统中的P、V操作是荷兰计算机科学家E.W.Dijkstra提出的信号量机制,主要用于解决进程的同步与...在实际应用中,P、V操作被广泛应用于银行账户转账、打印机共享、读者写者问题等场景,是操作系统设计中的重要工具。

    进程互斥与同步PPT学习教案.pptx

    【进程互斥与同步】是计算机系统中多进程并发...在实际应用中,如银行账户转账操作、打印机服务等,都涉及到进程互斥和同步的问题。因此,理解和掌握这些概念对于理解和设计多线程、分布式系统以及并发编程至关重要。

Global site tag (gtag.js) - Google Analytics