在Java中,可以通过使用ExecutorService来管理多个并发任务,并设置超时时间来避免影响并发。以下是一个示例代码:
ExecutorService executor = Executors.newFixedThreadPool(10); // 创建一个固定大小的线程池Future<String> future = executor.submit(() -> { // 执行需要超时控制的任务 Thread.sleep(5000); // 模拟耗时操作 return "Task completed";});try { String result = future.get(3, TimeUnit.SECONDS); // 设置超时时间为3秒 System.out.println(result);} catch (TimeoutException e) { System.out.println("Task timeout");} catch (InterruptedException | ExecutionException e) { e.printStackTrace();}executor.shutdown();在上面的示例中,我们使用ExecutorService创建一个固定大小的线程池,并提交一个需要超时控制的任务。通过调用future.get(timeout, unit)方法可以设置任务的超时时间,如果任务在超时时间内未完成,则会抛出TimeoutException异常。最后,记得调用executor.shutdown()来关闭线程池。这样可以避免单个任务的超时影响到其他并发任务的执行。


