当前位置:编程学习 > C#/ASP.NET >>

互斥变量好像没有解锁成功 必须重启iis

为了让服务的某些操作不出现并发冲突
我在我的web  WebService 类中定义了一个互斥变量

using System.Threading;

[WebService(Namespace = "http://tempuri.org/")]
public class Service : System.Web.Services.WebService
{
    private static Mutex mut = new Mutex();

    [WebMethod]
    public XmlDataDocument RecordsetToXmlSingle(String sql,String NeedData)
    {
        try
        {
            mut.WaitOne();
            //dosomething
            //如果超时 adodb会抛出异常
        }
        catch (System.Exception e)
        {
            //在这里释放互斥  
              mut.ReleaseMutex();

            throw e;
        }
        //要在这里释放互斥 
        mut.ReleaseMutex();
    }
}


这段代码一直正常运行 最近却屡次出现所有请求都处于等待状态的情况 虽然概率很低 但是只能重新启动iis 才行 
有没有那位仁兄能出手相助一把 感激不尽 本人分数有限 --------------------编程问答-------------------- 不够赚分来加 --------------------编程问答-------------------- 怎么都没有人顶呢
补充:.NET技术 ,  C#
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,