Cara Menetapkan Pemasa dalam Java
Soalan ini bertujuan untuk memahami cara menetapkan pemasa dalam Java, khususnya untuk mewujudkan sambungan pangkalan data dengan had tamat masa.
Menetapkan Pemasa
Kepada buat pemasa, gunakan kelas java.util.Timer:
Timer timer = new Timer();
Untuk tugasan sekali sahaja, jadualkannya dengan:
timer.schedule(new TimerTask() { @Override public void run() { // Your database code here } }, 2*60*1000); // 2 minutes in milliseconds
Untuk tugasan berulang, jadualkannya dengan :
timer.scheduleAtFixedRate(new TimerTask() { @Override public void run() { // Your database code here } }, 2*60*1000, 2*60*1000); // 2 minutes interval
Tamat masa untuk Sambungan Pangkalan Data
Untuk melaksanakan tamat masa kefungsian, gunakan 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 task for 2 minutes } catch (TimeoutException e) { // Task timed out } finally { service.shutdown(); }
Jika sambungan pangkalan data berjaya atau gagal dalam masa 2 minit, tugasan akan dilaksanakan seperti biasa. Jika tidak, TimeoutException akan dibuang. Walau bagaimanapun, tugasan akan terus berjalan di latar belakang, jadi ingatlah perkara itu.
Atas ialah kandungan terperinci Bagaimana untuk Melaksanakan Tamat Masa Sambungan Pangkalan Data di Java?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!