爱易网
IT新闻
IT新闻
爱易资讯
网站搭建
云虚拟主机教程
云服务器教程
Apache教程
IIS教程
Nginx教程
网站策划
站长文章
推广教程
淘宝客教程
网页设计
HTML教程
XHTML教程
CSS教程
HTML5教程
CSS3教程
JavaSript基础
JQuery教程
Node.js教程
前端技术
Ajax教程
Js特效
Xml教程
平面设计
页面UI设计
photoshop教程
程序开发
AI人工智能
Asp教程
Php教程
Asp.Net教程
Net Core教程
C#教程
Java教程
Jsp教程
开发技术
微信小程序教程
Uniapp开发教程
微信公众号开发
Andriod教程
IOS教程
DOS教程
Python教程
Docker教程
Windows Container教程
数据库
MSSQL教程
MySQL教程
Redis教程
Access教程
Oracle教程
数据库教程
操作系统
Linux教程
Windows教程
MAC教程
Cisco教程
交换机教程
防火墙教程
搜索
爱易网页
MySQL教程
数据库mysql锁表有关问题
数据库mysql锁表有关问题
日期:2014-05-16 浏览次数:20796 次
数据库mysql锁表问题
在数据库可以同时锁几个表吗,就是说要么同时锁住3个表,要么当其中有一个表在其他线程中锁住时,剩下的两个表都不锁!有点类似win32中,WaitForMultipleObjects(2, myChopsticks, TRUE, INFINITE);myChopsticks为两个mutex
------解决方案--------------------
引用
虽然写的是写锁t1,t3,读锁t2,当是我在多线程程序中测试,全用写锁,如共有表t1,t2,t3,刚开始,第一个线程锁住t1,t2,过了三秒,第二个线程要锁住t1,t2,t3,在第六秒第三个线程锁住t3,在第十秒时解锁第一个线程锁住的t1,t2,然后第12秒解释线程2的三个表锁
要是一个LOCK TABLE t1 WRITE, t2 WRITE,t3 WRITE;语句是等待三个都能锁住才执行的话,由于t1,t2已经在第一个线程中被锁住了,第六秒处理的锁住t3应该能即时生效吧,而实际操作结果表明,线程3的锁表会得等到线程的锁表结束后才能执行,也就是结果是线程2,在第10秒时执行,线程3得等到线程2解锁释放后,才能执行锁表t3
上一篇:MYSQL锁处理
下一篇: MySQL导出相关,该如何处理
免责声明:
本文仅代表作者个人观点,与爱易网无关。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
相关资料
更多>
带缓存数据效能的mysqli类
mysql在创建存储过程是一直提示的一个语法有关问题
查看现阶段mysql字符集的参数
MySQL时间字段毕竟使用INT还是DateTime
mysql定时任务简略例子
fulltext的索引短字符串有关问题
深入解析MySQL分区(Partition)效能
mysql 怎么实现靠select生成一个序列
以字符串封存的时间以及价格在mysql5.0中的sql语句写法
推荐阅读
更多>
让mysql server打印trace日记
MySQL防止反复插入唯一限制的数据
MySQL 最高速清空数据表数据的 SQL 语句
百度 MYSQL 笔考试题
Mysql字符串处理函数收拾
mysql服务器端、客户端的装配
MYSQL服务注册表剔除
mysql2装配失败in ubuntu
Mysql-proxy v0.8.2测试有关问题及解决办法
inux系统下安装MySQL 5.5prm
hibernate不能创造MYSQL数据库
mysql创办存储过程出错!
这句select TIMEDIFF() 能否简化,该如何解决
mysql root账户登录user表是只读的,如何修改啊
插入mysql 繁体字时,程序报错,解决方案
触发器执行顺序有关问题
oracle收购Mysql后,Mysql的装配配置方法
mysql联合操作符
记录mysql创建表异常一则
新手求解:mysql在一张没有任何规例的怎么取最后一条记录