学习笔记:Eclipse中Subversion插件如何使用详解 下篇

开发 项目管理
本文介绍Eclipse中如何使用Subversion插件,同时对Eclipse也做了简单的介绍,希望对大家有所帮助。

本文继续上节文章介绍Subversion插件在Eclipse中是如何使用的,希望大家能学到更多知识,同时也请各位多提宝贵意见,以便共同进步。以下是介绍Subversion插件

【Displayhook销毁机制】

在Displaydevice中我们看了如下个hook接口:

  1. /**  *Causestherunmethodoftherunnableto  
  2.   *beinvokedbytheuser-erfacethreadjustbeforethe  
  3.   *receiverisdisposed.  
  4.   */   publicvoiddisposeExec(Runnablerunnable){  
  5.        //注册用户自定义runnable在displayrelease时候回调此runnable  
  6.        将runnable注册到disposeList  
  7.    }  
  8.    disposeList中线程会在displayrelease时候被如下:  
  9.    /***Releasesanyernalresourcesbacktotheoperating  
  10. *systemandclearsallfieldsexceptthedevicehandle.  
  11. */   protectedvoidrelease{……  
  12.        //会执行用户注册销毁线程  
  13.        (disposeList!=null){  
  14.           for(i=0;i               (disposeList[i]!=null)disposeList[i].run;  
  15.           }}  
  16.        ……}  

看来SWT并没有把事情做绝了还是给开发者留下条后路Display允许开发者注册个自定义线程hook到Displayrelease过程开发者可以用如下方式来确保开发者使用系统资源在Displayrelease时候被销毁:

  1.     display.disposeExec(Runnable{  
  2.               publicvoidrun{//销毁系统资源逻辑代码  
  3.           image.dispose;  
  4.           ……}}); 

以上方式其实也是JFace中图片资源管理(ImageRegistry、ResourceManager)能够确保Displayrelease时候能够彻底释放被ImageRegistry托管图片资源.到这里回顾下SWT中资源释放途径吧:
1、覆写相应Component对应dispose思路方法这有别于Displayhook机制其能够在Display运行期间(未被release的前)就释放掉系统资源***方式。
2、利用Displayhook机制确保在Display被release时候能够销毁资源注意请不要过多依赖此方式很容易造成在Display被release的前已经发生了系统crash问题。

Eclipse的本身只是一个框架平台,但是众多插件的支持使得Eclipse拥有其他功能相对固定的IDE软件很难具有的灵活性。许多软件开发商以Eclipse为框架开发自己的IDE。

【JFace中图片资源管理--ImageDescriptor】

前面我们已经见过SWT中Image和ImageData类型了在继续下面内容的前我们先看下在JFace中我们最常用来创建图片资源个工厂类:ImageDescriptor在ImageDescriptor类型介绍说明中告诉我们有两种使用ImageDescriptor创建图片方式分别通过createImage和createResource接口“TherearetwowaystogetanImagefromanImageDescriptor.ThemethodcreateImagewillalwaysaImagewhichmustbedisposedbythecaller.Alternatively,createResourcesasharedImage.WhenthecallerisdonewithanimageobtainedfromcreateResource,theymustcalldestroyResourceratherthandisposingtheImagedirectly.”分析如下:

首先看下createResource方式ImageDescriptor是种DeviceResourceDescriptor后者对外操作如下:

  1. /**   *Createstheresourcedescribedbythisdescriptor    */  
  2.     publicabstractObjectcreateResource(Devicedevice)throwsDeviceResourceException;    /**  
  3.    *Undoeseverythingthatwasdonebyapreviouscalltocreate(...)    */  
  4.     publicabstractvoiddestroyResource(ObjectpreviouslyCreatedObject);  

本篇对Eclipse中如何使用Subversion插件已经全部介绍完毕。请关注本文的其他相关报道。

 【编辑推荐】

  1. CentOS系统中安装subversion并使用svn+ssh访问
  2. Subversion mod_authz_svn验证用户查看受限资源漏洞
  3. 在Linux下subversion和apache安装配置
  4. 揭露MyEclipse Subversion环境建立的内幕
  5. 学习笔记:剖析Collabnet Subversion集成
责任编辑:佚名
相关推荐

2010-05-18 13:26:16

Subversion插

2010-05-20 18:30:08

Eclipse下使用S

2010-05-18 16:56:03

Tortoise Su

2010-05-17 09:19:03

Subversion

2010-05-14 16:57:01

Subversion命

2010-05-13 15:18:19

Subversion插

2010-05-13 14:27:28

Subclipse插件

2010-05-19 11:17:53

Subversion插

2010-05-14 16:11:52

Subversion命

2010-06-12 14:19:00

Eclipse UML

2011-06-17 09:58:26

Qt Chapter QObject

2011-06-17 10:19:11

Qt QWidge QSetting

2010-05-20 18:00:52

Eclipse下使用S

2010-05-18 09:59:06

Subversion安

2009-06-17 17:44:41

Eclipse插件Sp

2010-05-13 10:26:42

Subversion配

2010-05-13 10:47:20

Collabnet S

2010-05-21 08:57:43

Subversion

2010-05-12 15:46:51

Subversion客

2010-05-31 20:07:31

SVN版本控制插件
点赞
收藏

51CTO技术栈公众号