2008-09-23 5 views

답변

33

두 스레드 사이에서 java.lang.Object를 공유합니다.이 스레드는 작업을 계속할 수있는 시점을 작업자 스레드에 알리는 데 그 목적이 있습니다. 요구 사항이보기 스레드를

stick.notify(); 

참고 :

stick.wait(); 

보기 스레드가 된 onDraw 작업을 완료, 그것은이를 호출 작업자 스레드가 잠을해야 할 지점에 도달 할 때마다,이 수행 객체의 모니터를 소유합니다. 귀하의 경우에는,이 작은 동기 블록에 적용하는 매우 간단합니다 :

void onDraw() { 
    ... 
    synchronized (stick) { 
    stick.notify(); 
    } 
} // end onDraw() 

이러한 방법에 java.lang.Object 상위를위한 Javadoc을 참조하십시오 (와의 notifyAll, 단지 경우); 그들은 아주 잘 쓰여졌습니다.

2

장애물과 같은 상위 수준의 concurreny API를 원한다면 Java 1.3 이상에서 작동하는 java 5 동시성 API의 백 포트를 시도해 볼 수 있으며 Android에서 작동 할 수 있습니다. Object.wait/notify 등의 기능은 작동하지만 조금 간결 할 수 있습니다.

Backport-util-concurrent

관련 문제