当前位置: 代码迷 >> Web Service >> 多线程中检测某个.asmx链接是否有效,该怎么解决
  详细解决方案

多线程中检测某个.asmx链接是否有效,该怎么解决

热度:195   发布时间:2016-05-02 02:52:11.0
多线程中检测某个.asmx链接是否有效
我的测试code:
C# code
try {   System.Net.WebRequest   myRequest   =   System.Net.WebRequest.Create( "http://192.168.0.6/rootserver/DirService.asmx ");   System.Net.WebResponse     myResponse   =   myRequest.GetResponse(); return   "ok "; } catch(Exception   ex) { return   ex.Message.ToString(); } 


或者

C# code
//引入命名空间MSXML2using MSXML2;public bool getWSStatus()        {            string url = "http://192.168.105.10/hotelwebsrv/hotelwebsrv.asmx";            XMLHTTP http = new XMLHTTP();            try            {                http.open("GET", url, false, null, null);                http.send(null);                int iStatus = http.status;                //如果取得的网页状态不正确,   就是不存在或没权访问                   if (iStatus == 200)                    return true;                else                    return false;            }            catch            {                return false;            }        }

 
假如.asmx无效,大概需要16-18秒的反应时间,有木有更快一点的方法???
假如我在将这个放在多线程中,时间慢会是程序的结果报错,所以继续更好的方法,在线等!!!

------解决方案--------------------
这个时间取决于很多因素,你能控制的很少很少,你最多可以大概控制 WebRequest 的timeout