web页面,多窗口同时进行 服务器对比 问题
项目中有个服务器对比功能,在页面服务器列表中选择2个服务器进行对比,主要对比目录文件。
我采用递归方式进行对比,一开始写的时候没有考虑到多窗口同时操作问题,在类里定义了几个全局变量来
存放文件数目、一样的文件路径、不一样的文件路径等等。后来发现这样做多窗口同时操作时数据会错乱。
去掉了全局变量,改成在方法里传参数。但问题是我改完了后,多窗口测试,服务器对比中途就停止了,
查看Server-U里的信息,登陆用户空闲了,程序就一直那样僵持下去。。。 同样实现方式的SFTP也一样。
我测试发现甲页面的服务器对象好像影响到了乙页面的服务器对象当前所处的目录,这有点不太明白了,
难道2次new的服务器对象冲突了吗?
而且我传的参数的值也改变了,由于参数较多而方法只能返回一个值所以我采用
int i = 1;
int j = 1;
int[] a = new int[2];
a[0] = i;
a[1] = j;
// 调用方法
add(a);
acc(a...);
......
......
//方法
add(int[] a)
{
a[0] ++;
a[1] ++;
}
我采用这样的方式来传递一大堆参数,这样可以解决多个方法递归处理而只能返回一个值得问题,而且 数组 ,StringBuffer 属于复杂类型,可以这样传递值,
但在我的代码中多窗口时值还是错乱了。。。 为什么???
多窗口服务器对比时就算值错乱了,但为什么程序会僵死呢? 两个服务器对象相互影响导致不能正常执行代码????
我采用的是 apache common net 包, FTP服务器用server-u
麻烦高手解答下,谢谢。。。
由于公司代码带不出来 所以不能贴出来。。。