sorry ,i don't know ,you can debug this class->SerializerFactory ,you will find thread executed under different versions of dubbo are different ,in dubbo2.5.6 ,dubbo will create a IO work thread to load class ,it use forkjninthread's contextclassload,but ,in dubbo2.5.10 dubbo will use a nettyClientThread,dubbo didn't solve the problem,it just use different thread. but it's not important so The heart of the problem is this forkjoinpool , you should avoid use parallelStream ,It has a lot of problems. The default thread pool does not change Thread.contextClassLoader to the system class loader. When ForkJoinPool.commonPool is used in a multi-class loader environment (e.g. a JavaEE container) this causes references to be retained to the class loader associated with the code that first uses the pool. This is highly likely to cause a memory leak. The InnocuousForkJoinWorkerThread does not modify Thread.contextClassLoader so undesirable class loader references are retained even when using the InnocuousForkJoinWorkerThreadFactory
[ Full content available at: https://github.com/apache/incubator-dubbo/issues/2165 ] This message was relayed via gitbox.apache.org for [email protected]
--------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
