시나리오가 있습니다. 뭔가 잘못 될 때까지 기다리고 싶습니다. 보통 20 초 정도 걸립니다.Java 사용 Thread.sleep() 또는 계속 묻습니다.
while(foo) {
try {
Thread.sleep(5000);
} catch (InterruptedException e) {
e.printStackTrace();
}
}
아니면 그냥 이렇게 가야하나요?
while(foo) {
}
foo를 토글하는 것은 무엇이든 할 수 있습니까? 가능한 경우 Wait/Notify가 합리적인 것처럼 보입니다. 설문 조사에 열심히 노력하십시오. Sleep()을 사용하면 대기 시간이 생기고 CPU/메모리 사이클이 낭비되며 Sleep()이 없으면 CPU/메모리 사이클이 낭비됩니다. 꽤 큰 총 대기 시간도 있습니다 (상자가 오버로드 된 경우 foo를 설정하는 스레드가 오랜 시간 실행되지 않을 수 있음). –