Java settimeout鎬庢牱涓庣嚎绋嬫睜閰嶅悎
鍦↗ava涓紝鍙互浣跨敤ScheduledExecutorService鏉ュ疄鐜扮被浼间簬JavaScript涓殑setTimeout鍔熻兘锛屽苟涓庣嚎绋嬫睜閰嶅悎浣跨敤銆係cheduledExecutorService鏄竴涓敤浜庢墽琛屽畾鏃朵换鍔$殑鎺ュ彛锛屽畠鍙互鍦ㄦ寚瀹氱殑鏃堕棿闂撮殧鍚庢墽琛屼换鍔°€?/p>
涓嬮潰鏄竴涓ず渚嬩唬鐮侊紝婕旂ず濡備綍浣跨敤ScheduledExecutorService鏉ュ疄鐜扮被浼间簬setTimeout鐨勫姛鑳斤紝骞朵笌绾跨▼姹犻厤鍚堜娇鐢細
import java.util.concurrent.Executors;
import java.util.concurrent.ScheduledExecutorService;
import java.util.concurrent.TimeUnit;
public class Main {
public static void main(String[] args) {
ScheduledExecutorService executorService = Executors.newScheduledThreadPool(1);
Runnable task = () -> {
System.out.println("Task executed after 2 seconds");
};
executorService.schedule(task, 2, TimeUnit.SECONDS);
// 灏嗙嚎绋嬫睜鍏抽棴
executorService.shutdown();
}
}
鍦ㄤ笂闈㈢殑绀轰緥涓紝棣栧厛鍒涘缓浜嗕竴涓猄cheduledExecutorService绾跨▼姹狅紝骞舵寚瀹氱嚎绋嬫暟涓?銆傜劧鍚庡畾涔変簡涓€涓猂unnable浠诲姟锛屽苟浣跨敤schedule鏂规硶鍦?绉掑悗鎵ц璇ヤ换鍔°€傛渶鍚庯紝璋冪敤shutdown鏂规硶灏嗙嚎绋嬫睜鍏抽棴銆?/p>
閫氳繃杩欑鏂瑰紡锛屽彲浠ュ疄鐜扮被浼间簬setTimeout鐨勫姛鑳斤紝骞朵笖鍙互閫氳繃ScheduledExecutorService鏉ユ帶鍒朵换鍔$殑鎵ц鏃堕棿銆傚悓鏃讹紝閫氳繃绾跨▼姹犲彲浠ユ洿濂藉湴绠$悊鍜屾帶鍒朵换鍔$殑鎵ц銆?/p>