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

SWT中多线程应用 2 例

阅读更多
使用多线程,时时更新Label显示当前时间。

例子代码包括两部分,run方法使用eclipse提供的默认方法实现,SWTlabel刷新。
run2方法使用timetask线程(java多线程方式)实现。
不管什么方式,都回避不了,eclipse多线程对java多线程的限制(在java线程中不可以直接操作SWT的control)。
但是个人认为:倾向使用java线程套eclipse线程的方式,因为多线程的负担由eclipse平台转移至了java虚拟机。对于非常复杂的数据计算或许可以提高效率。减少eclipse的响应时间。
(以上观点,仅仅是使用中的猜测,没有任何证据。希望我可以发现证据支持这一猜测)
public class Runner {
		private Label ll;

		private boolean start = false;

		private Timer timer;

		public Runner(Label ll) {
			this.ll = ll;
		}

		public void start() {
			start = true;
			// run();
			run2();
		}

		private void run() {
			Display.getDefault().asyncExec(new Runnable() {
				public void run() {
					if (!start)
						return;
					ll.setText(new Date().toString());
					Display.getDefault().timerExec(2000, this);
				}
			});
		}

		private void run2() {
			timer = new Timer(true);
			timer.scheduleAtFixedRate(new TimerTask() {
				public void run() {
					if (!start)
						return;
					Display.getDefault().asyncExec(new Runnable() {
						public void run() {
							ll.setText(new Date().toString());
						}
					});
				}
			}, 1000, 1000);
		}

		public void stop() {
			start = false;
		}
	}
2
2
分享到:
评论

相关推荐

    java高手真经 光盘源码

    javathread.zip 10.Java多线程编程(线程池、生产者消费者、存取款实例) javautil.zip 11.Java常用实体类 javaxml.zip 14.XML属性文件 第4部分(6个程序包) javagui.zip 15.Java GUI库对比实例 javaawt.zip ...

    java基础案例与开发详解案例源码全

    12.1.5 为什么需要多线程309 12.1.6 线程分类309 12.2 线程的生命周期309 12.2.1 线程的状态及转换310 12.2.2 线程睡眠311 12.2.3 线程让步313 12.2.4 线程的加入313 12.3 线程的调度和优先级314 12.4 线程的同步315...

    java源码包2

     Java非对称加密源程序代码实例,本例中使用RSA加密技术,定义加密算法可用 DES,DESede,Blowfish等。  设定字符串为“张三,你好,我是李四”  产生张三的密钥对(keyPairZhang)  张三生成公钥(publicKeyZhang...

    JAVA上百实例源码以及开源项目

     Java非对称加密源程序代码实例,本例中使用RSA加密技术,定义加密算法可用 DES,DESede,Blowfish等。  设定字符串为“张三,你好,我是李四”  产生张三的密钥对(keyPairZhang)  张三生成公钥(publicKeyZhang...

    JAVA上百实例源码以及开源项目源代码

     Java非对称加密源程序代码实例,本例中使用RSA加密技术,定义加密算法可用 DES,DESede,Blowfish等。  设定字符串为“张三,你好,我是李四”  产生张三的密钥对(keyPairZhang)  张三生成公钥(publicKeyZhang...

    java源码包---java 源码 大量 实例

     Java非对称加密源程序代码实例,本例中使用RSA加密技术,定义加密算法可用 DES,DESede,Blowfish等。  设定字符串为“张三,你好,我是李四”  产生张三的密钥对(keyPairZhang)  张三生成公钥(publicKeyZhang...

    java源码包3

     Java非对称加密源程序代码实例,本例中使用RSA加密技术,定义加密算法可用 DES,DESede,Blowfish等。  设定字符串为“张三,你好,我是李四”  产生张三的密钥对(keyPairZhang)  张三生成公钥(publicKeyZhang...

    java源码包4

     Java非对称加密源程序代码实例,本例中使用RSA加密技术,定义加密算法可用 DES,DESede,Blowfish等。  设定字符串为“张三,你好,我是李四”  产生张三的密钥对(keyPairZhang)  张三生成公钥(publicKeyZhang...

    成百上千个Java 源码DEMO 4(1-4是独立压缩包)

    Java非对称加密源码实例 1个目标文件 摘要:Java源码,算法相关,非对称加密 Java非对称加密源程序代码实例,本例中使用RSA加密技术,定义加密算法可用 DES,DESede,Blowfish等。 设定字符串为“张三,你好,我是李四”...

    成百上千个Java 源码DEMO 3(1-4是独立压缩包)

    Java非对称加密源码实例 1个目标文件 摘要:Java源码,算法相关,非对称加密 Java非对称加密源程序代码实例,本例中使用RSA加密技术,定义加密算法可用 DES,DESede,Blowfish等。 设定字符串为“张三,你好,我是李四”...

Global site tag (gtag.js) - Google Analytics