function netWorkManage()
{
	/**
	 * 超时管理线程列表
	 */
	_network=this;
	this.parent=null;
	this.TimeList=new Array();
	 /**
	 * 添加一个线程到管理列表
	 * @param {Object} prcossName  通讯进程名称
	 * @param {Object} TimeOut   超时时间 单位 /秒
	 * @param {Object} Msg       超时后的提示消息
	 * @param {Object} Relogin   是否需要终止程序执行,并重新登陆 参数 1,0
	 * CallBack ,错误时候回调的函数
	 */
	netWorkManage.prototype.addOneCheck=function(processName,TimeOut,Msg,Relogin,CallBack)
	{
		//如果已经存在该进程管理/则删除旧数据
		if (_network.checkOneProcess(processName))
		{
			_network.delOneProcess(processName);
		}
		_network.TimeList[this.TimeList.length]=new Array(processName,TimeOut,Msg,Relogin,CallBack);
		_network.openOneTimeCheck();
	}
	/**
	 * p 判断一个线程是否存在于判断列表
	 * @param {Object} processName
	 */
	netWorkManage.prototype.checkOneProcess=function(processName)
	{
		for (var i=0;i<_network.TimeList.length;i++)
		{
			if (processName==_network.TimeList[i][0])
			{
				return true;
			}
		}
		return false;
	}
	/**
	 * 标记一个程序正常结束
	 * @param {String} processName 线程名称 
	 */
	netWorkManage.prototype.delOneProcess=function(processName)
	{
		//从线程列表中剔除元素
		for (var i=0;i<_network.TimeList.length;i++)
		{
			if (processName==_network.TimeList[i][0])
			{
				_network.TimeList.remove(_network.TimeList[i]);
			}
		}
		//清除超时管理句柄
		eval("clearTimeout("+processName+")")
	}
	/**
	 * 打开一个检测管理程序
	 */
	netWorkManage.prototype.openOneTimeCheck=function()
	{
		_network.CheckProgram();
	}
	/**
	 * 检测实体
	 */
	netWorkManage.prototype.CheckProgram=function()
	{
		/**
		 * 循环须要检测的程序列表
		 */
		for (var i=0;i<_network.TimeList.length;i++)
		{
			var name=_network.TimeList[i][0];
			var time=_network.TimeList[i][1];
			var msg=_network.TimeList[i][2];
			var relogin=_network.TimeList[i][3];
			var callback=_network.TimeList[i][4]
			/**
			 * 为线程创建同步检测句柄
			 */
	     eval(name+"=setTimeout("+function()
		 {
    //显示提示窗口
	if(relogin==1)
	{
	alert(msg="服务器在指定时间内未响应 ["+time+"秒]"+"\r\n该错误,须要重新登陆\r\n"+msg);
	}
	else
	{
	_network.parent.Common.showAlert(msg,"网络故障",null,null,null,null);
	}
			if (callback)
			{
				eval(callback);
			}
			if (relogin==1)
			{
				_network.parent.Data.setUserLogout();
			}
	}+","+time*1000+")")
		}
	}
}
