如何在应用程序中避免死锁问题?
任何基于锁的并发系统的一个不可避免的特点是在某些条件下系统可能阻塞。当一个连接占有一个锁而另一个连接试图改变锁的状态时,第二个连接要么等待第一个连接释放锁,要么因此而被阻塞。为了获得最好的可扩展性,性能和并发能力,在设计应用程序和查询语句时,应该注意尽量缩短事务的长度, 并且减少占有锁的时间。大多数并发问题往往出现在应用程序和数据库的设计阶段,因此,设计阶段如果充分考虑这个因素至关重要。 否则,应用程序就会存在潜在的潜能缺陷, 而且一般要到应用程序扩展性测试时才被发现。
相关文章:
热门推荐
- ASP编程点滴:包含文件
- 1.打开网页的时候提示: Internet Explorer 无法打开 Internet站点已终止操作
- 2.ie6不兼容hover ie6 a hover属性失效解决办法
- 3.JS实现获取图片大小和预览的方法完整实例【兼容IE和其它浏览器】
- 4.可以让IE假死的HTML代码是什么?
- 5.Javascript使用HoTMetal(1)实例教程
- 6.jQuery如何解决IE输入框不能输入的问题
- 7.Yii2.0 rules验证规则大全
- 8.jQuery点击页面其他部分隐藏下拉菜单功能
- 9.vue中tab选项卡的实现思路
- 10.Microsoft 脚本编码器(2) --- 使用脚本编码器