2010-03-14 76 views
3

我有一個代碼片段by the swt team,它完全符合我的需要。但是,有一部分我想分成另一類,特別是整個內聯的東西。爲了響應我的former question,建議應該使用Callable來實現線程對象。建議使用可運行的或更好的可調用實現,因爲我確實需要某種返回。使用單獨的線程類填充SWT表對象

但是,我不明白。我的問題是:

  1. 在原始代碼中,在方法運行的內聯實現中,會調用一些父對象。當線程分離時我該怎麼做?通過C'tor的參數傳遞對象?
  2. 在原始代碼中,另一個可運行對象嵌套在可運行實現中。到底有什麼好處呢?如何實現這個分隔代碼時?此外,這個嵌套runnable再次調用由main方法創建的對象。

請對我有憐憫,但我仍然是一個初學者,我的大腦接近崩潰:-(我想要的是將所有線程的東西分離到另一個類中,並使程序完全相同事情因爲它已經做。請幫助!

再次非常感謝你提前任何有益的建議,提示,實例等..

的REG 我

回答

1

內非靜態班java接收父實例(對於非靜態方法)和所有fi最終的局部變量(和方法參數)他們需要在構造函數中。你可以自己實現這個方法 - 這對於大型類來說是可以的。

所有UI的東西必須在主線程中執行。這就是爲什麼使用嵌套Runnable對象的原因。它被display.syncExec添加到事件隊列中,然後主線程在提取它時執行一些方法並執行其run方法。如果你想在這裏創建單獨的類,你應該通過構造函數或setXXX方法傳遞參數。

+0

嘿,謝謝......我認爲**我開始明白了。現在就試試這個吧... – 2010-03-14 09:40:24