"http-bio-8000-exec-1268" daemon prio=10 tid=0x00007fb1b4480000 nid=0x72d2 waiting for monitor entry [0x00007fb068743000] java.lang.Thread.State: BLOCKED (on object monitor) at sun.security.provider.X509Factory.getFromCache(X509Factory.java:203) - waiting to lock <0x00000005c0562958> (a java.lang.Class for sun.security.provider.X509Factory) at sun.security.provider.X509Factory.engineGenerateCertificate(X509Factory.java:93) at java.security.cert.CertificateFactory.generateCertificate(CertificateFactory.java:339) at sun.security.provider.JavaKeyStore.engineLoad(JavaKeyStore.java:747) - locked <0x0000000691299460> (a java.util.Hashtable) at sun.security.provider.JavaKeyStore$JKS.engineLoad(JavaKeyStore.java:55) at java.security.KeyStore.load(KeyStore.java:1214) at sun.security.ssl.TrustManagerFactoryImpl.getCacertsKeyStore(TrustManagerFactoryImpl.java:221) at sun.security.ssl.TrustManagerFactoryImpl.engineInit(TrustManagerFactoryImpl.java:51) at javax.net.ssl.TrustManagerFactory.init(TrustManagerFactory.java:250) at org.apache.http.conn.ssl.SSLContextBuilder.loadTrustMaterial(SSLContextBuilder.java:106)
X509Factory.getFromCache方法是个同步方法。 并发时,不算卡死,但是多少影响速度吧
搜了下,算jdk的bug吧, https://bugs.java.com/bugdatabase/view_bug.do?bug_id=6432000 https://bugs.java.com/bugdatabase/view_bug.do?bug_id=JDK-8129988
以下版本已经修复了 7u211 8u192
|