mingtian525 2011-12-29 01:58
浏览 642
已采纳

OpenOffice内存无限增加

我用:
soffice -headless -accept="socket,port=8100;urp;"
命令启动OpenOffice,然后在程序中

 

 

  public void run() {
        // 创建Openoffice连接
        OpenOfficeConnection con=null;
        long newsooc_s=System.currentTimeMillis();
        con = new SocketOpenOfficeConnection(8100);
        try {
            // 连接        
            long con_s=System.currentTimeMillis();
            con.connect();
            long con_e=System.currentTimeMillis();
            System.out.println(this.getName()+" "+con.isConnected()+"'con.connect: "+con_e+"-"+con_s+"=0."+(con_e-con_s)%1000+"秒");
        } catch (Exception e) {
            System.out.println("获取OpenOffice连接失败...");
            e.printStackTrace();
        }
        // 创建转换器
        DocumentConverter converter = new OpenOfficeDocumentConverter(con);
        // 转换文档html
        String fn = "E:/test_oo/Fintelligen_"+this.hashCode()+ ".html";
        converter.convert(new File("E:/test_oo/Fintelligen.xls"), new File(fn));
        long dc_e=System.currentTimeMillis();
        System.out.println(this.getName()+"'converter.convert: "+dc_e+"-"+newsooc_s+"="+(dc_e-newsooc_s)/1000+"."+(dc_e-newsooc_s)%1000+"秒");
        // 关闭openoffice连接
        con.disconnect();
    }

这样就会使后台的openoffice内存不断变大,好像链接没有释放。

请大虾解决一下内存问题。

展开全部

  • 写回答

1条回答 默认 最新

  • _1_1_7_ 2011-12-30 02:04
    关注

    [code="java"]public void run() {

    // 创建Openoffice连接

    OpenOfficeConnection con=null;

    try {
    long newsooc_s=System.currentTimeMillis();

    con = new SocketOpenOfficeConnection(8100);

        // 连接           
        long con_s=System.currentTimeMillis();   
        con.connect();   
        long con_e=System.currentTimeMillis();   
        System.out.println(this.getName()+" "+con.isConnected()+"'con.connect: "+con_e+"-"+con_s+"=0."+(con_e-con_s)%1000+"秒");   
    
    // 创建转换器   
    DocumentConverter converter = new OpenOfficeDocumentConverter(con);   
    // 转换文档html   
    String fn = "E:/test_oo/Fintelligen_"+this.hashCode()+ ".html";   
    converter.convert(new File("E:/test_oo/Fintelligen.xls"), new File(fn));   
    long dc_e=System.currentTimeMillis();   
    System.out.println(this.getName()+"'converter.convert: "+dc_e+"-"+newsooc_s+"="+(dc_e-newsooc_s)/1000+"."+(dc_e-newsooc_s)%1000+"秒");   
    } catch (Exception e) {   
        e.printStackTrace();   
    } finally{ 
    // 关闭openoffice连接   
    

    if(con!=null)
    con.disconnect();

    }
    }[/code]

    展开全部

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
编辑
预览

报告相同问题?

悬赏问题

  • ¥15 传人记程序做的plc 485从机程序该如何写
  • ¥15 已知手指抓握过程中掌指关节、手指各关节和指尖每一帧的坐标,用贝塞尔曲线可以拟合手指抓握的运动轨迹吗?
  • ¥50 libwebsockets 如何添加其他socket事件回调
  • ¥50 实现画布拖拽算子排布,通过flink实现算子编排计算,请提供思路
  • ¥15 esium自定义材质拉伸问题
  • ¥15 cmake+mingw使用<mysqlx/xdevapi.h>报错
  • ¥15 eNSP中防火墙的使用
  • ¥15 关于#mlnet#的问题:mlnet相关请求(语言-c#)
  • ¥15 lvgl7.11怎么做出文字被选中的效果
  • ¥50 如何快速查看手机目标app的主要服务器ip
手机看
程序员都在用的中文IT技术交流社区

程序员都在用的中文IT技术交流社区

专业的中文 IT 技术社区,与千万技术人共成长

专业的中文 IT 技术社区,与千万技术人共成长

关注【CSDN】视频号,行业资讯、技术分享精彩不断,直播好礼送不停!

关注【CSDN】视频号,行业资讯、技术分享精彩不断,直播好礼送不停!

客服 返回
顶部