1、 普元软件Eclipse插件开发培训资源管理(进阶)朱兴 2008-07-26MSN: zhu_GOCOM.PRIMETON.COMEclipse平台(开发者视角)JVMEquinox(OSGI Extension Point)RuntimeResourceWorkbenchGOCOM.PRIMETON.COMEclipse资源管理、Java io (nio)、文件系统A操作系统文件系统 B操作系统文件系统Java IO/Java NIOEclipse 工作区资源管理变化跟踪资源描述状态持久化机制GOCOM.PRIMETON.COMEclipse资源管理任务和作用Eclipse资源管理的主要任
2、务Change tracking :变化跟踪Resource metadata:资源描述信息State management:状态持久化 Full save:全面保存(工作区启动或者退出) Snapshot:只保存关键性的需要复杂计算的信息Eclipse资源管理的重大作用在Java IO基础之上提供了完善的状态管理、变化跟踪为进一步建立特定运行时模型提供了重要基础 JDT Element ModelGOCOM.PRIMETON.COMEclipse 2.X中的资源管理GOCOM.PRIMETON.COMEclipse 3.X中的资源管理GOCOM.PRIMETON.COMEclipse Run
3、time:Job、ISchedulingRuleJobEclipse线程支持 ISchedulingRule作用:Job协调,冲突控制要脱离resource management模块理解注意锁定范围,参照synchronized关键字的用法GOCOM.PRIMETON.COMEclipse资源管理: Batching操作IWorkspaceRunnable 创建IWorkspaceRunnable实现执行runnableIWorkspace.run(IWorkspaceRunnable action, IProgressMonitor monitor)Eclipse 3.0之 执行运行 ,锁
4、工作区IWorkspace.run(IWorkspaceRunnable action, ISchedulingRule rule, int flags, IProgressMonitor monitor)参 , 性 ,协调冲突GOCOM.PRIMETON.COMEclipse资源管理: Batching操作IWorkspaceRunnable 性 操作, 理解为只发一 件提 性 进一步 ,提供 的用 性IWorkspaceRunnable注意 要为启动一 的线程UI操作 在Display.sync或Display.async中注意和IWorkspaceJob的用currency1区“注意和ISchedulingRule的 用,fiGOCOM.PRIMETON.COMEclipse资源管理: fl台Batching操作IWorkspaceJob 一 IWorkspaceRunnableJob中运行启动一 的fl台、 步线程统一 一 ISchedulingRule