0
다음과 같은 경우를 생각해 호출 중단 :는 RMI에서 차단 된 스레드가
main() {
ClassA insA = new ClassA();
insA.run();
}
ClassA.run() {
for(;;) {
RMI.call();
blahblah();
}
}
RMI.call()
이 발생 블록 (다른 스레드에서) 뭔가까지 Semaphore.acquire()
를 사용하여 스레드를 RMI 기능입니다.
질문 : 안전하게 모든 스레드를 죽일 수 있습니까?
stop() {
Thread.currentThread.interrupt();
}
을하고 RMI 호출 스레드를 중단하지 것이다 외부 (예컨대 main()
)에서 호출 :
아래와 같이 ClassA
에 stop()
함수를 정의.
원래 스레드를 인터럽트하여 코드를 올바르게 종료 할 수 있습니까?
다른 방법으로 안전하게 종료 할 수 있습니까?