using System.Threading
private static Mutex m
2. 修改原先 *** 作数据库的部分,注意的是(数据库查询是不需要的):
if(m==null)
m=new Mutex()
//Enter into mutex area
m.WaitOne()
//Execute sql command here
//Depart from mutex area
m.ReleaseMutex()
数据库读写的程度,这是事务控制数据库隔离里面的内容。建议你使用spring声明式事务,并使用符合你的要求的事务隔离级别即可。
spring目前的提供支持的数据库事务隔离级别有:
数据库提供了四种事务隔离级别, 不同的隔离级别采用不同的锁类开来实现.
在四种隔离级别中, Serializable的级别最高, Read Uncommited级别最低.
大多数数据库的默认隔离级别为: Read Commited,如Sql Server , Oracle.
少数数据库默认的隔离级别为Repeatable Read, 如MySQL InnoDB存储引擎
即使是最低的级别,也不会出现 第一类 丢失 更新问题 .
Read Uncommited :读未提交数据( 会出现脏读,不可重复读,幻读 ,避免了 第一类丢失 更新 )
Read Commited :读已提交的数据(会出现不可重复读,幻读)
Repeatable Read :可重复读(会出现幻读)
Serializable :串行化
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)