- 浏览: 149539 次
- 性别:
- 来自: 北京
文章分类
最新评论
-
EclipseEye:
fair_jm 写道不错 蛮详细的 谢谢分享
SWT/JFace专题 --- SWT中Display和多线程 -
fair_jm:
不错 蛮详细的 谢谢分享
SWT/JFace专题 --- SWT中Display和多线程
RCP产品异常:Job found still running after platform shutdown. Jobs should be canceled
- 博客分类:
- Eclipse插件开发
RCP 工程打开时异常信息:
Job found still running after platform shutdown. Jobs should be canceled by the plugin that scheduled them during shutdown: ... ...
-----------------------------
分析发现时程序用的一个UIJob,在workbench非正常关闭时,UIJob还在运行,于是就有了上面的异常,替换成WorkbenchJob,就会正常。
-------
WorkbenchJob时一个专门的UIJob类,和UIJob的主要区别:在允许作业被调度和运行前,WorkbenchJob检测Workbench是否正在运行。
WorkbenchJob它使用作业更改监听器来确保:当作业已经完成时,在WorkbenchJob中包含的preformDone方法也被调用。
WorkbenchJob是UIJob的一种更安全的形式。WorkbenchJob会自己检测Workbench是否在运行,当Workbench关闭时,WorkbenchJob强制终止用户界面的更新。
WorkbenchJob源码贴一下:(关键是本身对PlatformUI.isWorkbenchRunning()的调用)
Job found still running after platform shutdown. Jobs should be canceled by the plugin that scheduled them during shutdown: ... ...
-----------------------------
分析发现时程序用的一个UIJob,在workbench非正常关闭时,UIJob还在运行,于是就有了上面的异常,替换成WorkbenchJob,就会正常。
-------
WorkbenchJob时一个专门的UIJob类,和UIJob的主要区别:在允许作业被调度和运行前,WorkbenchJob检测Workbench是否正在运行。
WorkbenchJob它使用作业更改监听器来确保:当作业已经完成时,在WorkbenchJob中包含的preformDone方法也被调用。
WorkbenchJob是UIJob的一种更安全的形式。WorkbenchJob会自己检测Workbench是否在运行,当Workbench关闭时,WorkbenchJob强制终止用户界面的更新。
WorkbenchJob源码贴一下:(关键是本身对PlatformUI.isWorkbenchRunning()的调用)
public abstract class WorkbenchJob extends UIJob { public WorkbenchJob(Display jobDisplay, String name) { super(jobDisplay, name); addDefaultJobChangeListener(); } public WorkbenchJob(String name) { super(name); addDefaultJobChangeListener(); } private void addDefaultJobChangeListener() { addJobChangeListener(new JobChangeAdapter() { public void done(IJobChangeEvent event) { //Abort if it is not running if (!PlatformUI.isWorkbenchRunning()) { return; } if (event.getResult().getCode() == IStatus.OK) { performDone(event); } }); } public void performDone(IJobChangeEvent event) { //Do nothing by default. } public boolean shouldSchedule() { return super.shouldSchedule() && PlatformUI.isWorkbenchRunning(); } public boolean shouldRun() { return super.shouldRun() && PlatformUI.isWorkbenchRunning(); } }
发表评论
-
再说SWT中的滚动面板ScrolledComposite实现
2013-06-19 15:43 2329记得以前写过一篇关于滚动面板的文章 SWT中 Scrolle ... -
OSGi参考资料
2013-04-18 01:11 685基于 OSGi 的面向服务的组件编程 探索 OSGi 框架的组 ... -
CDT(编辑、调试)参考资料
2013-04-17 02:15 1115CDT编辑器 --------- 构建基于 CDT 的编辑器, ... -
Workspace Resource框架专题(3)处理工作空间资源更改事件
2013-04-17 01:44 13803 处理工作空间资源更改事件 工作空间API允许工具对它 ... -
Workspace Resource框架专题(2)workspace 框架API
2013-04-17 01:27 14922 工作空间API 本 ... -
Workspace Resource框架专题(1)Resource的概念
2013-04-17 01:12 13951 Resource的概念 如 ... -
如何恢复断点及Marker
2013-03-05 00:41 0如何恢复断点及Marker -
深入Workbench框架
2013-03-01 02:10 1732深入Workbench框架(结合UIPersistent) 1 ... -
Eclipse插件开发中的Action
2013-02-24 23:10 2006插入点用来定义菜单出 ... -
Eclipse开发中编辑器(Editors)和视图(View)总结
2013-02-24 22:58 29141.视图(Views) 视图( ... -
SWT/JFace专题 --- 对话框向导(Dialogs Wizards)
2013-02-24 22:42 2244对话框向导(Dialogs Wizar ... -
SWT/JFace专题 --- JFace
2013-02-24 22:37 1645JFace JFace是基于SWT的一套图形工具包,它没有为 ... -
SWT/JFace专题 --- SWT中Display和多线程
2013-02-24 15:25 3242Display 1.Display 的创建 一个SWT程序 ... -
SWT/JFace专题 --- SWT API 结构
2013-02-23 18:31 1081SWT API 结构 1.布局类(l ... -
Eclipse启动过程(源码级剖析)
2013-02-20 03:24 3423双击eclipse安装目录下的eclipse.exe运行后,会 ... -
SWT/JFace专题 --- SWT结构浅析
2013-02-23 17:02 1025SWT技术是一套基于Java的 ... -
Eclipse平台体系结构
2013-02-21 23:56 18951.Eclipse平台体系结构 1 ... -
RCP平台架构
2013-02-23 14:11 1489RCP 富客户端通常是指具有独立用户界面的客户端程序。富客户 ... -
Ant构建脚本相关
2013-02-18 01:26 0Ant构建脚本相关 -
CDT源码架构研究
2013-02-18 01:24 0CDT源码架构研究
相关推荐
org.eclipse.equinox.p2.examples.rcp.cloud.rarorg.eclipse.equinox.p2.examples.rcp.cloud.rarorg.eclipse.equinox.p2.examples.rcp.cloud.rar
diff、diffstat、file、find、git、gitview、ln、locate、lsattr、mattrib、mc、mcopy、mdel、mdir、mktemp、mmove、mread、mren、mshowfat、mtools、mtoolstest、mv、od、paste、patch、rcp、rhmask、rm、slocate...
《Addison.Wesley.Eclipse.Rich.Client.Platform.Designing.Coding.and.Packaging.Java.Application》是一本深入探讨Eclipse Rich Client Platform(RCP)开发的专业书籍,配套源码的提供使得学习过程更具实践性。...
2. `shutdown`:关机命令,可以设置立即或定时关机。 3. `halt`:停止系统运行,通常用于关闭计算机。 4. `reboot`:重启系统,执行系统初始化过程。 5. `install`:用于软件安装,不同发行版可能有不同的包管理器,...
9. `rcp`:远程复制,基于rsh协议。 10. `finger`:获取用户信息。 11. `mail`:处理邮件。 12. `nslookup`:查询DNS记录。 五、系统安全相关命令: 1. `passwd`:更改用户密码。 2. `su`:切换用户。 3. `umask`:...
8. `rlogin`和`rcp`: 远程登录和复制。 9. `finger`: 获取用户信息。 10. `mail`和`nslookup`: 邮件服务和DNS查询。 【系统安全相关命令】 确保系统安全至关重要,以下命令用于设置和管理用户权限: 1. `passwd`:...
2. `shutdown`:用于关闭计算机,超级用户权限。可以设置时间延迟、警告用户、关闭电源或取消关机操作。 3. `halt`、`reboot`:停止和重启系统。 4. `install`:用于安装软件包。 5. `mount`、`umount`:挂载和卸载...
2. `shutdown`:此命令用于安全地关闭或重启系统。`-h`选项用于关机,`-r`用于重启,`-t`设置关机前的延迟时间,`-k`只发送警告不实际执行关机,`-F`在重启时强制检查文件系统。 接着,文件处理命令: 1. `file`:...
2. `shutdown`:用于安全关闭或重启系统,可设置延迟时间,也可以取消当前的关机计划。 3. `halt`:停止系统运行,通常在关闭电源前使用。 4. `reboot`:重新启动系统。 5. `install`:安装软件或更新系统。 6. `...
3. RCP:读取多点联系信息。 4. WCP:写入多点联系信息。 5. RCC:读取字单元联系信息。 6. WCC:写入字单元联系信息。 7. SCP:重置字单元联系信息。 8. RD:读取数据区域。 9. WD:写入数据区域。 10. SD:重置...
12. **rcp**: 在远程主机之间复制文件。 13. **mail**: 检查、发送和管理邮件。 14. **sendmail**: 发送邮件。 15. **mailq**: 检查邮件队列。 16. **ftp**: 通过FTP协议传输文件。 #### 其他常用命令 1. **cal**:...
的用法,向一个 RCP应用程序产品中添加标志和帮助。 每一章都基本独立于其他章节。 目录 1 富客户端平台 ......................................................................................................
■CHAPTER 16 From Eclipse RCP to the NetBeans Platform . . . . . . . . . . . . . . . . . . 279 ■CHAPTER 17 Tips and Tricks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ...
此时,RC电路的行为可以被描述为一个一阶常系数齐次微分方程,其特征方程为RCp + 1 = 0。这个方程的解表示了电容电压随时间的变化规律。 电容电压的零输入响应呈指数衰减形式,这表明电容上的电压会随着时间按指数...
2. **shutdown**: 关闭计算机,需要超级用户权限。可设置时间延迟、取消当前的关机操作、强制关机等。 3. **halt/reboot**: 分别用于停止和重启系统,也是超级用户权限。 4. **install**: 安装软件包,具体用法依赖...
8. **Rcp**:远程复制命令,用于在主机间复制文件。 9. **Scp**:安全复制命令,基于SSH,用于安全地复制文件和目录。 二、网络远程操作命令: 1. **Telnet**:远程登录,允许用户访问远程计算机。 2. **Rlogin**:...
2. shutdown命令:用于关闭计算机,超级用户才能使用该命令。格式:shutdown [-h][-i][-k][-m][-t]。重要参数:-t:在改变到其它运行级别之前,告诉init程序多久以后关机,-k:并不真正关机,只是送警告信号...
2. `shutdown`:关机或重启系统,`-h`表示关机,`-r`表示重启,`-t`设置关机前的延迟时间,`-k`仅发送警告,不实际执行关机。 二、文件处理命令 1. `file`:识别文件类型。 2. `mkdir`:创建目录。 3. `grep`:在...