利用互斥解决交易并发问题

来源:互联网 发布:微信js sdk接口文档 编辑:程序博客网 时间:2024/06/05 13:34

估计大多数人在写数据库相关的程序的时候,都是用一个数据库Connection。因此有时会遇到在程序并发操作数据库所造成的异常问题。解决这类问题,很多人都是在建立一个数据库连接,来分别操作;但是如果并发的数据库操作不知两个的时候,那前面所说得的方法就显得不是很实际。

 

其实,在程序中用一个数据库Connection很容易解决对数据库的互斥操作,大致的方法如下:

1.  首先,需要建立一个全局静态的互斥量;例如:

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();

 

以上的方法,展示如何使数据库操作互斥,那么用它来进行应用的时候,要根据自己的实际需要而定。

原创粉丝点击