2014-09-24 2 views
1
나는 연결 시간 초과읽기 타임 아웃 구별 할

에 읽기 및 연결 시간 제한을 구분합니다. 둘 중 하나가 발생하면 SocketTimeoutException을 던집니다.는 HttpURLConnection의

연결 시간 초과이 발생하면 예외 메시지로 메시지가 포함됩니다. 예 :이 일어나는 읽기 시간 제한, 아니 메시지가 포함되지 않은 경우

failed to connect to /192.168.X.X (port X) after Xms 

.

관련 : 물론

내가 하나의 메시지를 포함하는 것, 다른 하나는하지 않지만, 보이지 않는 사실에 의해 구별 할 수 현명한. 구현이 변경되면 코드가 손상됩니다.

두 가지 예외가 예상됩니다. 아마도 제가 놓친 것이있을 것입니다. 타임 아웃 값이 세터를 사용하여 설정되면

+0

왜 차이 사항을 할 수 있습니까? 그것은하지 않는다. – DiogoSantana

+0

내 용도로 사용합니다. 나는 다른 행동을 취하고 싶다. –

+0

사용 사례는 무엇입니까? 그것은 다른 해결책이되어야합니다 ... – DiogoSantana

답변

2

, 당신은 다음과 같은

try { 
    connection.connect(); 
    try { 
    yourCustomReadMethodThatThrowsSocketTimeoutException(connection); 
    } catch (SocketTimeoutException e) { 
    Log.e("asdf", "this is a read timeout"); 
    } 
} catch (SocketTimeoutException e) { 
    Log.e("asdf", "this is a connect timeout"); 
} 
관련 문제