数据库mysql锁表问题 在数据库可以同时锁几个表吗,就是说要么同时锁住3个表,要么当其中有一个表在其他线程中锁住时,剩下的两个表都不锁!有点类似win32中,WaitForMultipleObjects(2, myChopsticks, TRUE, INFINITE);myChopsticks为两个mutex 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 LOCK TABLE t1 WRITE, t2 READ ,t3 WRITE; feiwinghang '截至2010-04-21 21:02:57 用户结帖率0.00% 当您的问题得到解答后请及时结贴.http://topic.csdn.net/u/20090501/15/7548d251-aec2-4975-a9bf-ca09a5551ba5.html 虽然写的是写锁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 看得头晕。建议换种描述方法 , 比如 Thread 1, Thread 2, Thread 3t1 lock tb1,tb2,tb3t2 lock tb1,tb2t3 t4 t5 .... Thread 1, Thread 2, Thread 3t1 lock tb1,tb2,tb3t2 lock tb1,tb2 lock tb3t3 t4 t5 ....嗯,谢谢,刚又测试了下,应该是一锁全锁的 请教MYSQL高手,帮我优化下这个SQL语句 两条不解的sql 求各位解答 一个salve对多个master 如何在字段后添加一个后缀 关于 mysql5.1 win32下用Manage远程连接的问题 mysql4.0.25升级成4.1.22,数据插入的问题. MySQL的Table-Type之间的区别 如何通过MYSQL连接MSSQL数据库? 大家来看我是否需要买MYSQL的LICENCES? 数据库中存储过程和自定义函数的区别 最简单的问题 求sql语句(合并表相关)
'截至2010-04-21 21:02:57 用户结帖率0.00% 当您的问题得到解答后请及时结贴.
http://topic.csdn.net/u/20090501/15/7548d251-aec2-4975-a9bf-ca09a5551ba5.html
要是一个LOCK TABLE t1 WRITE, t2 WRITE,t3 WRITE;语句是等待三个都能锁住才执行的话,由于t1,t2已经在第一个线程中被锁住了,第六秒处理的锁住t3应该能即时生效吧,而实际操作结果表明,线程3的锁表会得等到线程的锁表结束后才能执行,也就是结果是线程2,在第10秒时执行,线程3得等到线程2解锁释放后,才能执行锁表t3
t1 lock tb1,tb2,tb3
t2 lock tb1,tb2
t3
t4
t5 ....
t1 lock tb1,tb2,tb3
t2 lock tb1,tb2 lock tb3
t3
t4
t5 ....
嗯,谢谢,刚又测试了下,应该是一锁全锁的