Java에서 타이머 설정
이 질문은 처음에는 데이터베이스 연결을 시도하고 연결 문제가 있는 경우 예외를 발생시키는 타이머 설정에 중점을 두었습니다. 생기다. 더 나아가 지정된 기간 동안 작업을 실행하도록 타이머를 요청하고 작업이 해당 시간을 초과하면 예외를 발생시킵니다.
타이머 설정
타이머를 설정하려면 java.util.Timer 객체를 생성하세요.
Timer timer = new Timer();
작업을 한 번 실행하려면 다음을 사용하여 예약하세요. Timer.schedule():
timer.schedule(new TimerTask() { @Override public void run() { // Database code here } }, 2*60*1000); // 2 minutes in milliseconds
지정된 간격으로 작업을 반복하려면 Timer.scheduleAtFixedRate():
timer.scheduleAtFixedRate(new TimerTask() { @Override public void run() { // Database code here } }, 2*60*1000, 2*60*1000);
Timeout Mechanism
작업 시간 초과를 설정하려면 ExecutorService:ExecutorService service = Executors.newSingleThreadExecutor(); try { Runnable r = new Runnable() { @Override public void run() { // Database task } }; Future<?> f = service.submit(r); f.get(2, TimeUnit.MINUTES); // attempt the task for 2 minutes } catch (InterruptedException e) { // Thread interrupted during sleep, wait, or join } catch (TimeoutException e) { // Took too long! } catch (ExecutionException e) { // Exception within the Runnable task } finally { service.shutdown(); }
위 내용은 타이머 및 ExecutorService를 사용하여 Java에서 작업에 대한 시간 초과 메커니즘을 어떻게 구현할 수 있습니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!