2011-3-15 16:39:49 org.apache.catalina.core.StandardWrapperValve invoke
严重: Servlet.service() for servlet action threw exception
java.lang.OutOfMemoryError: unable to create new native thread
at java.lang.Thread.start0(Native Method)
at java.lang.Thread.start(Unknown Source)
at java.util.Timer.<init>(Unknown Source)
at java.util.Timer.<init>(Unknown Source)
at org.snmp4j.util.DefaultTimerFactory$TimerAdapter.<init>(DefaultTimerFactory.java:44)
at org.snmp4j.util.DefaultTimerFactory.createTimer(DefaultTimerFactory.java:39)
at org.snmp4j.Snmp.createPendingTimer(Snmp.java:948)
at org.snmp4j.Snmp.send(Snmp.java:886)
at org.snmp4j.Snmp.send(Snmp.java:875)
at org.snmp4j.Snmp.send(Snmp.java:840)
at util.SnmpUtil.sendPDU_GetNext(SnmpUtil.java:190)
at util.SnmpUtil.GetNextLoop(SnmpUtil.java:242)
at action.NetFlowInAction.execute(NetFlowInAction.java:40)
at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:431)
at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:236)
at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1196)
at org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:414)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298)
at org.apache.coyote.http11.Http11AprProcessor.process(Http11AprProcessor.java:864)
at org.apache.coyote.http11.Http11AprProtocol$Http11ConnectionHandler.process(Http11AprProtocol.java:579)
at org.apache.tomcat.util.net.AprEndpoint$Worker.run(AprEndpoint.java:1665)
at java.lang.Thread.run(Unknown Source)
网页每隔3秒钟向服务器action请求一次,action调用SnmpUtil向监测的主机消息得到所需要的信息(比如网络流量),然后回传给页面。由于是实时监测,必须隔很短的时间就请求一次,可是时间长了以后就报上面的异常,请问该怎么解决呢?我用的是struts1.2.
严重: Servlet.service() for servlet action threw exception
java.lang.OutOfMemoryError: unable to create new native thread
at java.lang.Thread.start0(Native Method)
at java.lang.Thread.start(Unknown Source)
at java.util.Timer.<init>(Unknown Source)
at java.util.Timer.<init>(Unknown Source)
at org.snmp4j.util.DefaultTimerFactory$TimerAdapter.<init>(DefaultTimerFactory.java:44)
at org.snmp4j.util.DefaultTimerFactory.createTimer(DefaultTimerFactory.java:39)
at org.snmp4j.Snmp.createPendingTimer(Snmp.java:948)
at org.snmp4j.Snmp.send(Snmp.java:886)
at org.snmp4j.Snmp.send(Snmp.java:875)
at org.snmp4j.Snmp.send(Snmp.java:840)
at util.SnmpUtil.sendPDU_GetNext(SnmpUtil.java:190)
at util.SnmpUtil.GetNextLoop(SnmpUtil.java:242)
at action.NetFlowInAction.execute(NetFlowInAction.java:40)
at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:431)
at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:236)
at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1196)
at org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:414)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298)
at org.apache.coyote.http11.Http11AprProcessor.process(Http11AprProcessor.java:864)
at org.apache.coyote.http11.Http11AprProtocol$Http11ConnectionHandler.process(Http11AprProtocol.java:579)
at org.apache.tomcat.util.net.AprEndpoint$Worker.run(AprEndpoint.java:1665)
at java.lang.Thread.run(Unknown Source)
网页每隔3秒钟向服务器action请求一次,action调用SnmpUtil向监测的主机消息得到所需要的信息(比如网络流量),然后回传给页面。由于是实时监测,必须隔很短的时间就请求一次,可是时间长了以后就报上面的异常,请问该怎么解决呢?我用的是struts1.2.
先观察下是否有内存泄漏
或者增加堆大小