当前位置: 首页 > 网络应用技术

使用完整的未来进行多线程并发操作

时间:2023-03-07 02:10:01 网络应用技术

  在项目开发中,问题通常会遇到:在后端接口中,经常执行多个时间 - 累积任务(独立性和依赖性),例如:

  如果在请求的主要线程中,请串行这些任务操作,这将导致响应时间的线性叠加,这可能会导致不符合要求的要求,如图1:

  然后,耗时任务是并行执行的,因此响应时间大约是最耗时的任务处理时间,这可以大大减少系统的响应时间,如图2:图2:

  未来类型实际上是未来任务的返回对象,或子线程的返回对象(通过线程池分配子线程)

  可以看出,通过创建线程池创建子线程后,它将返回一个未来的对象,以通过方法获得子征的操作结果。应注意,该操作被阻止,也就是说,如果子任务未运行,主线程将始终更改护理,直到完成子任务。

  接口表示将来可能返回的结果。

  当您需要确定图2中的所有任务时。

  无论哪种方法,都在主线程中调用,它将阻止主线程。

  上述疼痛点来自Java 8。主要的新功能是:

  对于图2,毕竟需要所有任务,您可以使用以下操作来使用该方法:

  注意:完整未来的命名规则:

  Java完整的详细说明

  如何在Springboot中优雅地使用多线程

  Springboot使用Future来实现多任务平行

  使用未来

  使用完整的future

  完整的详细说明