간만의 공개(?) 포스팅...


Android의 java.lang package에 포함되어 있는 Thread에는 resume()suspend() method가 구현되어 있다.

하지만 어느시점부터 deprecated 되어 버렸다.

뭐, 책임 질 수 없으니 필요하면 직접 구현해서 쓰라는 얘기겠지...


그래서 구글링으로 찾아서 사용하고, 정리해 둔다. (오래되어 출처는 잊어버림-0- 출처는 역시나 StackOverflow)


private Object mPauseLock;


@Override

public void run() {

while (!mFinished) {

                //Do something you need!!

synchronized (mPauseLock) {

while (mPaused) {

try {

mPauseLock.wait();

} catch (InterruptedException e) {}

}

}

}

}


/**

 * Pause this thread

 */

public void onPause() {

synchronized(mPauseLock) {

mPaused = true;

}

}


/**

 * Resume this thread

 */

public void onResume() {

synchronized(mPauseLock) {

mPaused = false;

mPauseLock.notifyAll();

}

}


Posted by 세월의돌