`
soleegn
  • 浏览: 147437 次
  • 性别: Icon_minigender_1
社区版块
存档分类
最新评论
阅读更多
     使用SWT做开发的朋友,一定要注意~资源是一个杀手!对于我们这些无知的开发人员,使用了资源,不释放它,比不写程序或者不提供这个功能还可怕~因为它经不起考验,到了时间肯定完蛋!
     前两个天就遇到了这个,同事写了一个插件,一次性从数据库中取得1W以上的数据然后组织成树表格,显示给客户~取得数据的速度,树组装的速度,树展开的速度,都做了反复的优化,一切优化完成以后,就宣布完成!但是没有测,当我连续打开4个树以后,程序就非掉了~
    我先加大rcp的启动内存,没用!疯狂调用cg,没用!而且这中错误错的很奇怪,如果是内存异常,应该是JVM报出的,但是这次不是,仔细阅读异常,竟然是SWT打开图片,颜色,字体的时候的异常~肯定是资源问题了!
   因为以前一直再用Jface的treeviewer组件,所以一直没有关心资源的问题~但是1W的数据,使用的SWT的原生Tree组装的~而且还用了一些字体~
排查代码,竟然发现有字体被new出,但是没有释放~问题就出在这里~
   调用了

Font font = new Font (display, "Courier", 10, SWT.NORMAL);

那么就应该在不在需要这个Font的时候调用

font.dispose();

两个原则:
第一条是"谁占用,谁释放",第二条是"父构件被销毁,子构件也同时被销毁"。
分享到:
评论

相关推荐

    swt-win64-3.6.2.jar

    版本号"3.6.2"表明这是SWT的第三个主要版本(3.x.x系列)的第六次次要更新和第二次小更新。每个数字分别代表主版本、次版本和补丁版本。在软件开发中,主版本通常包含重大功能的改变,次版本则包含新功能或改进,而...

    SWT-resource address

    ### SWT (Standard Widget Toolkit) 资源地址与知识点总结 #### SWT介绍 SWT(Standard Widget Toolkit)是Eclipse平台的一部分,它提供了一组基于本地GUI库的跨平台小部件,可以创建高性能的用户界面。SWT的目标...

    swt-4.17M3-win32-win32-x86_64

    标题"swt-4.17M3-win32-win32-x86_64"表明这是SWT的一个特定版本,4.17M3代表4.17预发布第三版,针对Windows 64位系统。"win32-win32-x86_64"这部分通常表示SWT是为64位Windows操作系统编译的,尽管"win32"可能意味...

    swt资源释放问题

    Display 实例的创建可以使用 getDefault() 方法,第一次调用将创建一个新的 Display 实例,后续调用将获取已经创建的 Display 实例。getCurrent() 方法可以获取当前线程对应的 Display 实例。 需要注意的是,一个...

    SWTDesigner_Eclipse3.5--part1

    标题"SWTDesigner_Eclipse3.5--part1"表明这是一个针对Eclipse 3.5版本的SWTDesigner组件的第一部分。尽管该文件已被作者声明作废,并建议寻找更新的版本(SWTDesigner_v7.4.0_for_Eclipse3.5--1和SWTDesigner_v...

    swt收集的资料

    "swt.rar"和"51CTO下载-eclipse入门到精通(第一版)源代码—第二篇 SWT_JFace篇(6-16章).rar"可能分别提供了更多的SWT实例代码和Eclipse集成开发环境下的SWT-JFace教程。JFace是建立在SWT之上的一层抽象,简化了GUI...

    I4SWT-Group21-Ladeskab

    标题"I4SWT-Group21-Ladeskab"似乎是一个项目或任务的标识符,可能代表一个团队项目,如学生团队在课程I4SWT(可能是“软件工程”或类似课程)中的第21组,专注于“Ladeskab”,这可能是德语词汇,意为“加载台”或...

    java SWT简单小工具

    标签中的"学习java"意味着这个项目可能不仅仅是一个工具,也是一个学习资源,适合初学者了解如何在Java中使用SWT进行桌面应用开发。 在压缩包的文件列表中,我们看到以下几个关键文件: 1. `.classpath`:这是...

    Apress - The Definitive Guide To Swt And Jface

    - **第3章**:创建第一个SWT应用,介绍SWT的基本结构和工作流程。 - **第4章**:布局管理器,学习如何使用不同的布局策略来组织用户界面。 - **第5章**:控件详解,详细介绍SWT提供的各种标准控件及其使用方法。 ...

    Eclipse SWT开发点滴

    - 由于Sun公司的官方网站已经不再提供针对Windows平台的`comm2.0`开发包,因此需要自行寻找第三方提供的资源。 #### 六、Editor编辑器问题 1. **初始化问题** - 如果使用Eclipse自带的向导生成的Editor存在初始...

    第6章 SWT概述

    3. **资源管理**: SWT控件更接近于本地控件,资源管理更加有效,减少了内存消耗。 SWT的基础包包括: 1. **org.eclipse.swt.widgets**: 这是最常用的包,包含了诸如Button、Text、Label、Combo等基本组件。Shell...

    学习SWT,RCP的笔记.doc

    SWT的一个显著特点在于它能直接调用操作系统的GUI资源,这意味着SWT的应用程序在不同的平台上具有与本地系统相匹配的外观和感觉,从而提供了更好的用户体验。 #### 二、SWT的优势 - **一致性**: SWT应用的界面风格...

    java SWT连接视频设备DVR-DVS

    1. **导入相关库**:首先,确保你的项目中包含了SWT库以及任何可能需要的第三方库,如用于处理视频流的库,比如Java Media Framework (JMF) 或 OpenCV。 2. **设备发现**:编写代码来发现和枚举可用的DVR-DVS设备。...

    SuperMap Objects Java: SWT框架 快速入门

    "GettingStarted_swt"这个文件很可能是一个详细的步骤指南,涵盖了从安装SWT和SuperMap Objects Java,到创建第一个GIS应用的整个过程。它可能包括以下章节: - **环境配置**:详细说明如何设置开发环境,包括JDK、...

    swt2.rarswt2.rarswt2.rarswt2.rarswt2.rar

    例如,"merge1_split_8.pdf"可能是关于SWT组件介绍的第八部分,而"merge1_split_13.pdf"可能是关于事件处理或布局管理的第十三部分。这些PDF文档可能涵盖以下知识点: 1. SWT基础:介绍SWT是什么,它的特点,以及为...

    SWT入门.docx

    这段代码创建了一个200x100像素的窗口,显示文本"第一个 SWT 窗口",并保持窗口活动直至用户关闭。`readAndDispatch()`和`sleep()`的循环确保了程序能够及时响应用户的交互事件。 总的来说,SWT提供了一种强大的...

    第十八章 图形界面开发--AWT,Swing,SWT.pdf

    ### 第十八章 图形界面开发——AWT,Swing,SWT #### 18.1 图形界面简介 ##### 18.1.1 概述 在本章中,我们将探讨Java图形用户界面(GUI)开发的核心概念和技术。虽然在Java开发中,Web应用程序占据了主导地位,但...

    swt调用ocx应用实例(wps和windows本机播放器)

    第一个实例是调用WPS(Kingsoft Office)打开DOC文件。WPS是一款兼容Microsoft Office的办公软件,其OCX控件可以被嵌入到其他应用程序中,用于显示和编辑Word文档。这个示例中,开发者通过SWT与OCX的交互,实现了在...

    SWT 中嵌入Word 控件应用

    在IT行业中,有时候我们需要在Java应用中集成第三方控件或者组件来实现特定的功能,比如在SWT(Standard Widget Toolkit)环境中嵌入Word编辑器。这篇博客"SWT中嵌入Word控件应用"可能就是讲述如何在Java SWT界面中...

Global site tag (gtag.js) - Google Analytics