我的线程在调用时被锁定
new URL(url).openConnection();
线程转储的一部分是:
sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1195)
- locked <0x00000007056a2498> (a sun.net.www.protocol.http.HttpURLConnection)
at java.net.HttpURLConnection.getResponseCode(HttpURLConnection.java:379)
似乎被锁定在
"JakartaHttpHandler-http-timeout-pool-12-thread-1" daemon prio=10 tid=0x0000000046bb6800 nid=0x162 waiting on condition [0x00000000431b7000]
java.lang.Thread.State: WAITING (parking)
at sun.misc.Unsafe.park(Native Method)
- parking to wait for <0x00000007521c68b8> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
最后堆细节说,
compacting perm gen total 41408K, used 41295K [0x00000007fae00000, 0x00000007fd670000, 0x0000000800000000)
the space 41408K, 99% used [0x00000007fae00000, 0x00000007fd653e58, 0x00000007fd654000, 0x00000007fd670000)
线程不会在不抛出任何异常的情况下继续进行。
首先,我打算改变-XX:MaxPermSize
. 还有什么我可以做的吗?
我敢肯定,人们一定遇到过这个例外。
提前致谢。