我的程序有时候会卡死 关闭的时候还必须用任务管理器才能结束进程经调试发现问题在 
Log.println("connecting");
conn.connect();
Log.println("connected");打印了connecting就一直不动了,卡在 conn.connect() 设置了超时时间不管用不知道知道是什么原因引起的呢
还望各位不吝赐教,谢谢
                        URL serverUrl = new URL(url);
HttpURLConnection conn = (HttpURLConnection) serverUrl.openConnection();
conn.setConnectTimeout(20000);
conn.setRequestMethod(method);// "POST" ,"GET"
conn.addRequestProperty("Accept", "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8");
conn.addRequestProperty("User-Agent","Mozilla/5.0 (Windows NT 6.2; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/27.0.1453.110 Safari/537.36 CoolNovo/2.0.9.16");
if (method.equalsIgnoreCase(Method.GET.name())) {
Log.println("connecting");
conn.connect();
Log.println("connected");
} else if (method.equalsIgnoreCase(Method.POST.name())) {
conn.setDoOutput(true);
conn.connect();
conn.getOutputStream().write(contents.getBytes());
}

解决方案 »

  1.   

    conn.setReadTimeout(20 * 1000); 
    加上这句
      

  2.   

    卡死然后干什么?
    你是想要不卡死,还是卡死之后干掉,还是怎么着?
    你那个url是啥,本机能不能访问?
      

  3.   


    我是想让它不卡死 或者卡死之后多少秒之后退出url本机能访问的我加了 conn.setReadTimeout(20 * 1000);  貌似还是有这样的情况出现我再测试下看看前几天一直没管这个问题
      

  4.   

    用jstack看一下锁在哪儿了,分析下原因呗。