如何优化Java多线程代码(SWT)

时间:2016-09-23 17:57:33

标签: java multithreading user-interface optimization swt

我在SWT中编写了一个GUI应用程序,我的代码看起来像这样:

button.addSelectionListener(new SelectionAdapter() {
         @Override
         public void widgetSelected(final SelectionEvent e) {

         ... lot of variable initialization from text fields etc.

            new Thread(new Runnable() {
               @Override
               public void run() {

               ... more than 400 lines of code

               display.asyncExec() everywhere ...

      }).start();
   }
}

有没有办法优化这种代码? 我想将线程移动到自己的类中,但是,如何轻松获取所有Component值?

1 个答案:

答案 0 :(得分:1)

在课程结尾处创建一个嵌套类:

public class Someclass{
    //main code here

    class Nestedclass implements Runnable{
        //thread code here
    }
} 

这样代码将分为两部分,更容易阅读,嵌套类仍然可以访问所有全局变量。