文章列表
在SWT中,通常需要开多个线程来执行任务,因为主线程为UI线程,不能用太长的时间来执行某个任务,否则会造成失去响应的假象。
SWT的线程通信有几个要注意的地方:
1、工作线程访问UI线程。不能在非UI线程中直接访问UI控件的值,要获得或设置控件的值必须通过Display对象的asyncExec()或syncExec()函数,一般的使用方法是:
Java代码
//代码A:
Display disp = Display.getDefault();
if(disp != null) {
disp.asyncExec(new Runnable() {
...