爱易网
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 浏览次数:21189 次
数据库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导出相关,该如何处理
免责声明:
本文仅代表作者个人观点,与爱易网无关。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
相关资料
更多>
MySQL 汉语显示乱码
mysql source 命令导入数据乱码有关问题
mysql slave 连接中断的有关问题
字符串截取,该如何处理
wwwwb,WWWWA你们见见这个情况
远程数据库访问(主数据库访问多个分公司数据库),该怎么处理
结构链表的表
phpMyAdmin管理MySQL数据库有关问题
EMS SQL Manager 2010 for MySQL怎么汉化
推荐阅读
更多>
C#取MySQL中的数据时出现乱码,该怎么处理
SQLyog远程连接MySQL出现的异常
用存储过程如何从表中删除主键在别一结果表中的数据
请大侠们帮小弟我看看这段代码结构下有没有有关问题?
windows下pgAgent使用有关问题
最近在学习使用mysql,就是行列值转换的有关问题
mysql数据表损坏导致的reviewboard有关问题
(转载)MySQL惯用操作基本操作
mysql出现Table doesn’t exist when using LOCK TABLES的状况
封锁MySQL(版本5.1)服务器进程的方法,推荐使用mysqladmin客户端工具
查寻复合索引的字段按顺序输出
Mysql中有没有步骤知道当前表已经被锁定
一个表的设计有关问题
mysql 5.1事件部署器 状态查看、开启命令,以及测试
MySQL 1130 异常
求一 SQL语句 !多谢!
透过Mysql语句得到mysql安装路径
mysql话语改成oracle语句
如何取分组的前3条数据
用MySQL Instance Manager启动MySQL的有关问题