`
longgangbai
  • 浏览: 7331054 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

SWT开发中同步异步的注意点

阅读更多

    细心的RCP开发者中会注意一个事情:

   在Eclipse3.3版本中

public class Application implements IApplication  类中的

stop方法源代码:

 

   销毁时的同步操作使用:

 

Eclipse自动生成的代码如下:
/* (non-Javadoc)
* @see org.eclipse.equinox.app.IApplication#stop()
*/
public void stop() {
final IWorkbench workbench = PlatformUI.getWorkbench();
if (workbench == null)
return;
final Display display = workbench.getDisplay();
display.syncExec(new Runnable() {
public void run() {
if (!display.isDisposed())
workbench.close();
}
});
}

 

 

    在RCP中要在非UI线程中执行UI线程的操作,最简单的方式就是display.syncExec或者display.asyncExec,如果UI线程所需的时间较长的话,则应该使用display.asyncExec

在执行异步线程的时候,我们一般应当继承Job或者UIJob类:UIJob是在UI线程中运行的,可以直接访问窗体组件。Job是在非UI线程中运行,如果在里面想访问窗体组件,需要通过Display.asynExec()或者synExec方式来执行。UIJob要尽量的短,不要过多的占用UI线程的时间。

分享到:
评论

相关推荐

    Eclipse SWT开发点滴

    ### Eclipse SWT开发点滴 #### 一、第三方包的引用 在使用Eclipse进行SWT开发时,经常会遇到需要引入第三方库的情况...通过以上知识点的学习,开发者可以更好地理解和掌握Eclipse SWT开发过程中的关键点和技术细节。

    使用swt开发的程序用于web上

    1. **异步通信**:Web应用通常基于HTTP协议,因此需要处理异步数据请求和响应,而SWT中的交互通常是同步的。GWT提供XMLHttpRequest(XHR)和GWT-RPC服务来处理这一问题。 2. **用户体验**:Web应用的界面更新通常...

    SWT开发手册.zip

    本SWT开发手册将深入讲解如何使用SWT中的基本控件,如按钮、文本和标签,以创建功能丰富的GUI应用。以下是对这些关键控件的详细介绍: 1. **按钮(Button)**:SWT提供了几种不同类型的按钮,包括普通按钮(Button)...

    swt开发包,eclipse

    开发者可以利用这些资源快速在Eclipse环境中搭建SWT应用的开发环境,进行GUI设计和程序编写。通过学习和使用SWT,开发者可以创建出与操作系统深度融合、响应速度快、用户体验优秀的Java桌面应用。

    SWT开发

    【标题】:“SWT开发”涉及的是使用Standard Widget Toolkit(SWT)进行图形用户界面(GUI)编程的知识点。SWT是Eclipse基金会提供的一种开源Java库,它为开发者提供了与操作系统原生UI组件交互的能力,使得Java应用...

    swt 开发实例

    在"基于SWT Browser与Freemarker的Java桌面开发"实例中,我们将探讨如何结合这两种技术来构建现代、动态的Java桌面应用。SWT Browser组件允许开发者在Java应用中集成Web浏览器功能,这样就可以利用HTML、CSS和...

    swt 开发学习

    SWT(Standard Widget Toolkit)是Java编程环境中用于创建桌面应用程序的一种图形用户界面(GUI)工具包,由Eclipse基金会开发并维护。它提供了一系列丰富的组件,使得开发者可以构建功能强大的跨平台应用程序。SWT...

    SWT开发所需jar包

    标题 "SWT开发所需jar包" 指的是在Java编程环境中使用SWT(Standard Widget Toolkit)库进行GUI(图形用户界面)开发时所需的Java档案(jar)文件。SWT是Eclipse基金会的一个项目,它提供了一组原生的GUI组件,使...

    SWT开发教程1

    在SWT中,开发者可以使用各种组件来构建GUI,如Button、Text、Label、Shell、Composite、Tree、Table等。这些组件提供了丰富的事件处理机制,允许开发者响应用户的操作。例如,Button组件可以处理点击事件,Text组件...

    java SWT图形用户界面开发教程

    1. SWT程序开发步骤。 2. SWT常用组件的使用。 3. SWT的布局。 4. SWT的事件处理。 5. SWT Designer简介。

    SWT/Jface 开发入门指南

    SWT/Jface开发入门指南是一篇专为初学者编写的教程,旨在帮助他们快速搭建开发环境并掌握使用SWT和JFace编写图形化应用程序的基本技巧。以下是该教程所涵盖的关键知识点: 1. **SWT和JFace简介**: - SWT全称...

    Eclipse SWT 开发参考

    ### SWT开发参考知识点详解 #### 1. SWT简介 SWT (Standard Widget Toolkit) 是一个开源的GUI组件库,主要用于Java平台。它是Eclipse UI框架的基础,并被广泛应用于各种Java应用中。相比于早期的AWT和后来的Swing...

    eclipse开发SWT应用

    Shell是SWT中的顶级窗口,所有其他控件都包含在Shell中。 3. **初始化 SWT 组件**:在主类的构造函数中,调用`Shell`的构造函数初始化Shell,并设置其大小和标题。然后可以使用`Display`对象来创建各种控件,例如`...

    SWT开发环境配置与项目发布

    SWT(Standard Widget Toolkit)是Java编程中用于创建桌面应用程序的一种图形用户界面(GUI)工具包,它是Eclipse项目的组成部分,提供了丰富的控件和高度可定制的用户界面。本教程将详细讲解如何配置SWT开发环境...

    使Excel嵌入到SWT窗口中

    使Excel嵌入到SWT窗口中 知识点一:Eclipse版本和jdk版本的选择 在本例中,我们使用的是Eclipse 3.3.1版本和jdk 5.0版本。Eclipse是一个开源的集成开发环境(IDE),它支持多种编程语言,包括Java、C++、Python等...

    swt开发所要的32位与64位lib库

    理解如何在不同体系结构下选择和使用SWT库,以及如何在IDEA中配置和管理这些库,对于开发基于SWT的应用至关重要。通过掌握这些知识点,开发者可以更有效地利用SWT创建功能丰富的、跨平台的Java应用程序。

    SWT编程开发学习资料

    2. **事件处理**:SWT中的事件模型基于监听器,你将学习如何添加和移除监听器,以及处理各种GUI事件,如点击按钮、改变文本等。 3. **对话框和Shell**:Shell是SWT应用程序的基本窗口,而对话框则包括消息对话框、...

    swt3.7的最新开发帮助文档

    在SWT3.7中,开发者可以找到以下关键知识点: 1. **组件库**:SWT提供了各种原生UI组件,如按钮、文本框、列表、树视图、表格等,这些组件在不同平台上具有统一的外观和行为。 2. **事件驱动编程**:SWT使用事件...

    SWT开发参考文档

    ### SWT开发参考文档知识点解析 #### 1. SWT简介 SWT(Standard Widget Toolkit)是一种开源的GUI组件库,主要用于Java平台。它是Eclipse平台UI的基础,并为开发者提供了丰富的本地操作系统外观风格的用户界面组件...

    SWT和JFace开发实例

    SWT(Standard Widget Toolkit)和JFace是Java中用于创建图形用户界面(GUI)的库,主要用于Eclipse插件开发和独立应用的构建。这两个库是Eclipse平台的重要组成部分,提供了一种高效、灵活的方式来创建丰富的桌面...

Global site tag (gtag.js) - Google Analytics