마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

쓰레드 중복실행문제 질문드려요..

0 추천
@Override 
public void surfaceCreated(SurfaceHolder arg0) {
if(_thread.state==GameThread.PAUSED){
//When game is opened again in the Android OS
_thread = new GameThread(getHolder(), _context, new Handler(),this);
_thread.start();
}else{
//creating the game Thread for the first time
            if(!_thread.isAlive()) {  //이렇게 처리해줘도 오류남 ㅠㅠ
                _thread.start(); //이부분이 에러남
            }
}
}
 
홈키로 나왓다가 다시 들어갈때 쓰레드중복실행으로 죽어버리네요..
그래서 isalive()조건을 줘도 소용이읍네요..
어떻게 처리해야할까요..
예림이그코드좀바바 (2,470 포인트) 님이 2015년 3월 3일 질문

1개의 답변

0 추천
Thread.start는 객체당 한 번만 호출할 수 있습니다.
익명사용자 님이 2015년 3월 3일 답변
if (thread.getState() == Thread.State.NEW)
{
     thread.start();
}

이렇게해서 쓰레드 중복실행은 막았는데
다시 들어가면 쓰레드로 그려준 Canvas객체가 그려지질않네요
지나가던 행인인데,
스레드를 책보고 차분히 좀 공부하는게 낫지 않을까요?
이렇게 너무나도 기본적인 질문만 계속 올려봐야 보는 사람도 좀 답답하고,
또 이렇게 땜빵해봐야 후속 문제해결이 안될것(다시 말해 또 너무 기본적인 질문을 할테고)으로 보입니다.
...