안드로이드 개발 질문/답변
(글 수 45,052)
안녕하세요..
오늘 이 초보가 디버깅 중에 이상한 부분이 있어서요..
제가 만든 어플에서 상대 웹페이지가 살아있는지 보는 부분이 있는데요,
HttpURLConnection을 이용해서, setRequestMethod("HEAD") 방식으로
특정 파일이 존재하는지 알아보고 있습니다.
버튼을 누르면 그 부분이 실행되는데요,
어플 시험하던 도중 누군가가
이 버튼을 미친듯이(?) 연타를 했습니다.
물론 이 버튼은 누르는 순간 비활성화되고
결과값 return 되면 다시 활성화 됩니다.
즉, 논리적으로 수행 중에 다시 수행하거나
이런 부분은 없습니다.
그랬는데 어플이 죽더군요!!
물론 매우 낮은 확률이긴 합니다만;;
그런데 로그를 보니 dalvikvm 에서
threadid=1: stack overflow on call to Landroid/os/Handler;.dispatchMessage:VL
라고 찍으면서 제 어플을 종료시켜버리더라구요...
Exception 은 java.lang.StackOverflowError 입니다.
이 경우에
dalvikvm 에서 뭔가 버그가 있어서 이럴 수도 있는 것인가요?
어플에서는 재귀 관련된 부분이 없어서 StackOverflowError 는
발생하지 않을 것 같다는 게 제 생각입니다만,
혹시 제가 놓치고 있는 어떤 게 있는지 조언을 구하고자 글 올려봅니다.
고수분들의 도움 부탁드립니다.
감사합니다.
오늘 이 초보가 디버깅 중에 이상한 부분이 있어서요..
제가 만든 어플에서 상대 웹페이지가 살아있는지 보는 부분이 있는데요,
HttpURLConnection을 이용해서, setRequestMethod("HEAD") 방식으로
특정 파일이 존재하는지 알아보고 있습니다.
버튼을 누르면 그 부분이 실행되는데요,
어플 시험하던 도중 누군가가
이 버튼을 미친듯이(?) 연타를 했습니다.
물론 이 버튼은 누르는 순간 비활성화되고
결과값 return 되면 다시 활성화 됩니다.
즉, 논리적으로 수행 중에 다시 수행하거나
이런 부분은 없습니다.
그랬는데 어플이 죽더군요!!
물론 매우 낮은 확률이긴 합니다만;;
그런데 로그를 보니 dalvikvm 에서
threadid=1: stack overflow on call to Landroid/os/Handler;.dispatchMessage:VL
라고 찍으면서 제 어플을 종료시켜버리더라구요...
Exception 은 java.lang.StackOverflowError 입니다.
이 경우에
dalvikvm 에서 뭔가 버그가 있어서 이럴 수도 있는 것인가요?
어플에서는 재귀 관련된 부분이 없어서 StackOverflowError 는
발생하지 않을 것 같다는 게 제 생각입니다만,
혹시 제가 놓치고 있는 어떤 게 있는지 조언을 구하고자 글 올려봅니다.
고수분들의 도움 부탁드립니다.
감사합니다.