IT TIP

Thread.sleep 대 TimeUnit.SECONDS.sleep

itqueen 2020. 10. 14. 21:31
반응형

Thread.sleep 대 TimeUnit.SECONDS.sleep


Java 스레드를 절전 모드로 전환하도록 호출 할 경우 이러한 양식 중 하나를 다른 것보다 선호하는 이유가 있습니까?

Thread.sleep(x)

또는

TimeUnit.SECONDS.sleep(y)

TimeUnit.SECONDS.sleep(x)를 호출 Thread.sleep합니다. 유일한 차이점은 가독성이며 사용하는 TimeUnit것이 명확하지 않은 기간 (예 : Thread.sleep(180000)vs. TimeUnit.MINUTES.sleep(3))에 대해 이해하기 더 쉽습니다 .

참고로 sleep()in 의 코드 아래를 참조하십시오 TimeUnit.

public void sleep(long timeout) throws InterruptedException {
    if (timeout > 0) {
        long ms = toMillis(timeout);
        int ns = excessNanos(timeout, ms);
        Thread.sleep(ms, ns);
    }
}

그들은 동일합니다. 더 설명하고 시간 단위 (참조를 선택할 수 있기 때문에 나는 후자를 선호 TimeUnit) : DAYS, HOURS, MICROSECONDS, MILLISECONDS, MINUTES, NANOSECONDS, SECONDS.

참고 URL : https://stackoverflow.com/questions/9587673/thread-sleep-vs-timeunit-seconds-sleep

반응형