我需要从后台通过命令获取一个操作的状态以及进度,通过刷新jsp来获取这些信息(3秒每次),过了一个时间之后,发现用pstree看到有1000多个java子进程之多,并且报IOException:too many open files,请问怎么解决呢?很急,希望大虾救命!
解决方案 »
- 是不是在下面的测试程序中,对象不能直接调用父类没有而子类有的函数????
- 请教:环境变量问题
- 哪里下载JAVA的编译环境
- 怎么从把由一个文件构造的inputstream经过一些处理后再生成另外一个inputstream?
- hashcode是什么?他的值代表的什么意思?
- 请问如何将路径和文件名分开来打印!!比如:D:\3D MAX\10.txt
- 一个类调用另一个类的函数
- 如何在applet程序中获得applet所在服务器ip地址?
- java程序
- 这两段代码中,冒号1和冒号2的输出顺序是怎么确定的?
- 我自己编了一个程序,有个逻辑错误知道怎么改。给分
- jsp页面调用Bean时,通过<jsp:useBean id="bean1" scope="session" class="aaa.DataQuery" />他是调用无参数的构造函数,但是我想给这个B
<%@ page import="com.xxx.xxx.ProgressData"%>
<%@ page import="com.xxx.xxx.util.BundleString"%>
<%@ page import="com.xx.common.Node"%>
<%//@ page isThreadSafe="false" %>
<%@ taglib prefix="fmt" uri="http://java.sun.com/jstl/fmt"%>
<fmt:setBundle basename="resource" var="res"/>
<% System.out.println("-------------Begin progress.jsp----------------");
System.out.println("-------------progress.jsp Thread name is: "+ Thread.currentThread().getName()+"--------------");
ProgressData pd = new ProgressData();
Node node = pd.getProgress();
String pg = node.getValue(pd.PROGRESS);
int progress = (pg == null || "".equals(pg)) ? 0 : Integer.parseInt(pg);
String msg = node.getValue(pd.PROMPT);
String status = node.getValue(pd.STATUS); System.out.println("-------------End progress.jsp----------------------");
try
{
if (msg.indexOf("###") > -1)
{
String[] msgTmp = msg.split("###");
msg = BundleString.getResBundleString(request, msgTmp[0]) + msgTmp[1];
}
else
{
msg = BundleString.getResBundleString(request, msg);
} }
catch(Exception e)
{
}
%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>Progress Data</title>
<link href="css/style.css" rel="stylesheet" type="text/css"><script language="javascript">
function init()
{
<%if (progress == 100){%>
parent.updateStatus = false;
<%}%>
parent.updateProgressBar('setupcopy', '<%=progress%>', 3, 'false', '1', '1','', '');
}var msg = "<%=msg%>";
parent.document.getElementById("Message").innerHTML = msg;<%if (progress > 4 && progress < 95){%>
parent.document.getElementById("ProgressNote").innerHTML = "<fmt:message bundle='${res}' key='progress.copyfailnote'/>";
<%}%><%if (progress ==98){%>
parent.document.getElementById("ProgressNote").innerHTML = "<fmt:message bundle='${res}' key='progress.grubnote'/>";
<%}%><%if (progress == 100){%>
parent.document.getElementById("ProgressNote").innerHTML = "<fmt:message bundle='${res}' key='progress.finishaction'/>";
parent.document.getElementById("finishDiv").style.visibility = "visible";
<%}%><%if ("die".equals(status.toLowerCase())){%>
parent.document.getElementById("dieDiv").style.visibility = "visible";
<%}%>
//alert(msg);
</script>
</head>
<body onLoad="javascript:init();">
</body>
</html>
java 18158 root 463w FIFO 0,5 38348 pipe
java 18158 root 464w FIFO 0,5 38353 pipe
java 18158 root 465w FIFO 0,5 38358 pipe
java 18158 root 466w FIFO 0,5 38363 pipe
java 18158 root 467w FIFO 0,5 38368 pipe
java 18158 root 468w FIFO 0,5 38373 pipe
java 18158 root 469w FIFO 0,5 38378 pipe
java 18158 root 470w FIFO 0,5 38383 pipe
java 18158 root 471w FIFO 0,5 38388 pipe
java 18158 root 472w FIFO 0,5 38393 pipe
java 18158 root 473w FIFO 0,5 38400 pipe
java 18158 root 474w FIFO 0,5 38405 pipe
java 18158 root 475w FIFO 0,5 38410 pipe
java 18158 root 476w FIFO 0,5 38416 pipe
java 18158 root 477w FIFO 0,5 38421 pipe
java 18158 root 478w FIFO 0,5 38426 pipe
java 18158 root 479w FIFO 0,5 38431 pipe
java 18158 root 480w FIFO 0,5 38436 pipe
java 18158 root 481w FIFO 0,5 38441 pipe