Thread.sleep () VS Executor.scheduleWithFixedDelay ()

Cel: Od czasu do czasu wykonuj określony kod.

Pytanie: Czy pod względem wydajności istnieje znacząca różnica między:

while(true) {
    execute();
    Thread.sleep(10 * 1000);
}

i

executor.scheduleWithFixedDelay(runnableWithoutSleep, 0, 10, TimeUnit.SECONDS);

?

Oczywiście ta druga opcja jest bardziej koszerna. Chciałbym się jednak dowiedzieć, czy powinienem rozpocząć przygodę o nazwie „Spędź kilka dni na refaktoryzacji starszego kodu, aby pożegnać się z Thread.sleep ()”.

Aktualizacja: Ten kod działa w środowisku super / mega / hyper high-load.

questionAnswers(4)

yourAnswerToTheQuestion