0
我正面臨一個問題,我的多線程在Oracle ucp 下的Park階段是堆棧跟蹤,如果有人有oracle的源代碼。 ucp.util包會很有幫助線程在Park階段,oracle.ucp.util(連接池)
java.lang.Thread.State: TIMED_WAITING
at sun.misc.Unsafe.park(Native Method)
- parking to wait for <773dc402> (a java.util.concurrent.FutureTask)
at java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215)
at java.util.concurrent.FutureTask.awaitDone(FutureTask.java:426)
at java.util.concurrent.FutureTask.get(FutureTask.java:204)
at oracle.ucp.util.UCPTaskManagerImpl$3.get(UCPTaskManagerImpl.java:144)
at oracle.ucp.common.UniversalPooledConnectionImpl.isValid(UniversalPooledConnectionImpl.java:248)
at oracle.ucp.common.FailoverableUniversalPooledConnectionBase.isValid(FailoverableUniversalPooledConnectionBase.java:14)
at oracle.ucp.common.UniversalPooledConnectionImpl.isValid(UniversalPooledConnectionImpl.java:216)
at oracle.ucp.common.FailoverableUniversalPooledConnectionBase.isValid(FailoverableUniversalPooledConnectionBase.java:14)
at oracle.ucp.common.UniversalConnectionPoolImpl.borrowConnectionAndValidate(UniversalConnectionPoolImpl.java:178)
at oracle.ucp.common.UniversalConnectionPoolImpl.borrowConnection(UniversalConnectionPoolImpl.java:148)
at oracle.ucp.jdbc.JDBCConnectionPool.borrowConnection(JDBCConnectionPool.java:166)
at oracle.ucp.jdbc.oracle.OracleJDBCConnectionPool.borrowConnection(OracleJDBCConnectionPool.java:1441)
at oracle.ucp.jdbc.oracle.OracleConnectionConnectionPool.borrowConnection(OracleConnectionConnectionPool.java:82)
at oracle.ucp.jdbc.PoolDataSourceImpl.getConnection(PoolDataSourceImpl.java:1043)
at oracle.ucp.jdbc.PoolDataSourceImpl.getConnection(PoolDataSourceImpl.java:985)
at oracle.ucp.jdbc.PoolDataSourceImpl.getConnection(PoolDataSourceImpl.java:966)
http://oracle.developer-works.com/article/5227563/UCP+problem%3A+connections+time+out+but+can+still+be+used – user1933888