jca发现javacore当中大量的线程在Object.wait,请问一下正常吗》?


之前用jca发现由于hashtable的并发导致大量的死锁,修改成ConcurrentHashMap以后,变成Object.wait,
不知道是不是ejb的链接过小还是其他原因 , 高手查看一下啦。

环境:websphere7.0 运行一个实例内存在7g左右,hp的机器,6cpu,
 
ejb的连接数:   ORB.thread.pool     min :10    max:50   


at java.lang.Object.wait(Native Method) at com.ibm.rmi.iiop.Connection.getNextFragment(Connection.java:2451) - locked [9fffffff364af0b0] (a java.util.LinkedList) at com.ibm.rmi.iiop.IIOPInputStream.getNextBuffer(IIOPInputStream.java:335) at com.ibm.rmi.iiop.CDRReader.availableData(CDRReader.java:877) at com.ibm.rmi.iiop.CDRReader.alignAndCheck(CDRReader.java:864) at com.ibm.rmi.iiop.CDRInputStream.read_octet_array(CDRInputStream.java:404) at com.ibm.rmi.iiop.CDRInputStream. (CDRInputStream.java:237) at com.ibm.rmi.corba.TypeCodeInputStream. (TypeCodeImpl.java:2750) at com.ibm.rmi.corba.TypeCodeImpl.read_value_body(TypeCodeImpl.java:1710) at com.ibm.rmi.corba.TypeCodeImpl.readTypeCode(TypeCodeImpl.java:1636) at com.ibm.rmi.iiop.CDRReader.readAnyOpt(CDRReader.java:1076) at com.ibm.CORBA.iiop.UtilDelegateImpl.readAny(UtilDelegateImpl.java:407) at javax.rmi.CORBA.Util.readAny(Util.java:109) at com.adtec.pool.ejb._ECAPResPool_Stub.getResData(_ECAPResPool_Stub.java) at com.adtec.pool.client.ResPoolManager.getResData(ResPoolManager.java:225)

你可能感兴趣的:(java,thread,ejb,IBM,HP)