Java 任務調度和隊列是編寫Java程序的重要組成部分。任務調度可以讓程序定時執行某些任務,而隊列則可以讓程序按特定規則處理并管理任務。
示例代碼:
import java.util.Timer; import java.util.TimerTask; public class TaskScheduler { public static void main(String[] args) { TimerTask task = new TimerTask() { public void run() { System.out.println("Hello, world!"); } }; Timer timer = new Timer(); timer.schedule(task, 0, 1000); // 每1秒執行一次 } }
上面的代碼是一個基本的任務調度程序。它使用Java中的Timer和TimerTask來定時執行一個任務,即每1秒鐘打印一次"Hello, world!"
示例代碼:
import java.util.concurrent.ArrayBlockingQueue; import java.util.concurrent.BlockingQueue; public class TaskQueue { public static void main(String[] args) { final BlockingQueuequeue = new ArrayBlockingQueue<>(10); Thread producer = new Thread(new Runnable() { public void run() { while (true) { try { String task = produceTask(); queue.put(task); System.out.println("Produced: " + task); } catch (InterruptedException ex) { ex.printStackTrace(); } } } }); Thread consumer = new Thread(new Runnable() { public void run() { while (true) { try { String task = queue.take(); System.out.println("Consumed: " + task); consumeTask(task); } catch (InterruptedException ex) { ex.printStackTrace(); } } } }); producer.start(); consumer.start(); } private static String produceTask() { // 生成任務 return "Task"; } private static void consumeTask(String task) { // 處理任務 } }
上面的代碼是一個簡單的任務隊列程序,它使用Java中的BlockingQueue實現任務的處理和管理。隊列可以讓程序按照先進先出的原則依次處理任務。