并发访问和修改HashMap导致的CPU奇高

现象为:CPU持续满负荷运转,但是http连接数不见减少。
使用jstack做了dump,发现如下stack,原来是servlet中访问HashMap是非同步的。

"http-80-136" daemon prio=10 tid=0x7e59c000 nid=0x1b1 runnable [0x794e1000..0x794e1db0]
   java.lang.Thread.State: RUNNABLE
	at java.util.HashMap.get(HashMap.java:303)

 

通过关键字:HashMap.java:303 也可以在搜索引擎中得到更多详细信息。

 

你可能感兴趣的:(java,jstack,cpu奇高)