마스터Q&A
접속유지
가입하기
안드로이드 Q&A
최근 질문
미답변 질문
태그
사용자
질문하기
마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다.
안드로이드펍
에서 운영하고 있습니다. [
사용법
,
운영진
]
인기있는 태그
초보어플개발
(3427)
안드로이드스튜디오
(2664)
안드로이드-초보어플개발
(1333)
안드로이드-스튜디오
(1086)
도와주세요-
(995)
이미지
(970)
listview
(866)
리스트뷰
(844)
오류
(805)
레이아웃
(693)
fragment
(675)
webview
(670)
asynctask 일시정지/시작에 대해 질문드립니다.
0
추천
안녕하세요.
asynctask를 사용하다가 궁금한 점이 있어 질문글 올립니다.
onPreExecute에서 다이얼로그를 하나 띄운후 doInBackground에서 작업을 하다가
다이얼로그의 일시정지[pause]버튼을 누르면 현재 작업을 잠시 멈추고,
다시 누르면 그 상태에서 이어서 진행하는 기능을 구현하려고 합니다.
찾아보니 asynctask의 wait를 사용하면 일시정지/notify를 하면 다시시작한다는데..
다른글을 보면 Thread.sleep()으로도 된다고 하는데요.
일단 후자의 방법으로 제가 원하는 시간만큼 슬립-n초지남-자동으로 task 작업시작
이런식으로 되더라고요. wait,notify로도 확실히 pause/resume이 되나요?
안드로이드
asynctask
망고사탕
(
5,000
포인트)
님이
2017년 8월 22일
질문
Please
log in
or
register
to add a comment.
답변 달기
·
글에 소스 코드 보기 좋게 넣는 법
·
질문에 대해 추가적인 질문이나 의견이 있으면 답변이 아니라 댓글로 달아주시기 바랍니다.
표시할 이름 (옵션):
답변이 채택되거나 답변에 댓글이 달리면 이메일로 알려드립니다:
답변이 채택되거나 댓글이 달리면 이메일로 알려드립니다
개인정보: 당신의 이메일은 이 알림을 보내는데만 사용됩니다.
스팸 차단 검사:
스팸 검사를 다시 받지 않으려면
로그인
하거나 혹은
가입
하세요.
1개의 답변
0
추천
sleep, wait, notify 모두 확실하게 원하는 시간에 멈추기는 힘듭니다.
해당 take로 pause/resume 요청을 보낼 뿐이고, 그 요청이 언제 받아들여질지는 불확정적입니다.
다이얼로그로 pause/resume을 컨트롤하기에는 sleep()보다 wait()가 좋아보입니다.
sleep()은 하나의 스레드를 계속해서 사용하지 못하게 하는 무거운 작업이라고 생각하시면 됩니다.
minor
(
13,710
포인트)
님이
2017년 8월 22일
답변
답변 감사합니다.
말씀해주신대로 버튼을 눌렀을 때 boolean인자를 기준으로 doinbackground에서 wait를 걸었는데요, wait인 상태에서는 아예 asynctask같은 thread류가 종료되는것인가요? 다시 doinbackground를 타지 않는 것 같아서요.
요점은 wait에서 다시 활성화 시키기 위해 notify를 하고싶은데 이게 안됩니다..
Please
log in
or
register
to add a comment.
...