我有http控制器,服务A,服务B。有一个http请求。控制器方法从A调用方法,从B.控制器-> A -> B调用方法
线程和装载机:
Controller - [http-nio-8080-exec-7,5,main], TomcatEmbeddedWebappClassLoader
A - [http-nio-8080-exec-7,5,main], TomcatEmbeddedWebappClassLoader
B - [ForkJoinPool.commonPool-worker-3,5,main], jdk.internal.loader.ClassLoaders$AppClassLoader@6ed3ef1为什么对B的调用在不同的线程和类加载程序中?没有异步调用。
发布于 2022-11-24 10:58:10
ForkJoinPool是ExecutorService的实现。它将一个任务解析为多个较小的任务,在并行线程中运行,并在完成后加入它们。因此,最终结果似乎是同步的。如果没有显式调用,那么某些内部库在流中的某个地方使用叉/连接。
https://stackoverflow.com/questions/74559435
复制相似问题