社区
Oracle 高级技术
帖子详情
开发过程中怎样来考虑并发性和死锁的问题
xdfzmh
2003-08-22 07:31:26
开发过程中怎样来考虑并发性和死锁的问题
...全文
81
3
打赏
收藏
开发过程中怎样来考虑并发性和死锁的问题
开发过程中怎样来考虑并发性和死锁的问题
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
3 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
Wnyu
2003-08-24
打赏
举报
回复
用事务及安全点。Oracle中的事务本来就是并发的。我们一般定立一个写表顺序机制(因为只有定表时才出现锁定)。
如有表A,B, C, D, E。
a程序会写到A, B,C表。
b程序会写到A,C,E表。
错误做法:
a程序写入顺序为A,C,B
b程序写入顺序为C, A, E
当a程序已锁定A,而且准备锁定C。 同时,b程序要锁定C, 发现C未被锁定,于是锁定C,接着又要锁定A。这样就现死锁(因为A已被锁定,而已等待锁定C)。
正确做法:(按已规定的锁定顺序)
a程序写入顺序为A,B, C
b程序写入顺序为A, C, E
当a程序已锁定A, 而且要锁定其他表(如B,C)。 此时,b程序要锁定A时发现A已锁定,此时等待A,直到A解锁。如此类推....
klbt
2003-08-23
打赏
举报
回复
主要考虑事务要及时提交,事务不宜过大
yuxuan
2003-08-23
打赏
举报
回复
我觉得首先应该知道Oracle并发处理机制
解决sqlite
死锁
示例异常database is locked示例
解决sqlite
死锁
示例异常database is locked示例
Java多线程程序
死锁
检查 JCarder.7z
Java多线程程序
死锁
检查 JCarder.7z
6.3课后习题1
第5章 Concurrency: Mutual Ex…5.3 Semaphores信号量5.4 Monitors管程5.5 Message Passing消息传
数据库
开发
维护
性
能调优 备份还原 各种复杂
问题
的解决方案
数据库
开发
维护
性
能调优 备份还原 各种复杂
问题
的解决方案 这时对CSDN上出现的很多
问题
的解决方案的总结 免费分享 大家多多下载哦
ErrDeadlockDetected(解决方案).md
项目
中
碰到的,记录一下解决方案
Oracle 高级技术
3,497
社区成员
18,709
社区内容
发帖
与我相关
我的任务
Oracle 高级技术
Oracle 高级技术相关讨论专区
复制链接
扫一扫
分享
社区描述
Oracle 高级技术相关讨论专区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章