G
Gast2
Gast
Hallo zusammen,
Eine Frage zu dem asyncExec... Startet das asyncExec jedes mal wenn es aufgerufen wird einen neuen Thread parallel zu dem UI Thread und die kommunizieren dann untereinander??? In dem TestRunnable werden wie ich sehe UI Sachen aufgerufen, dafür benötigt man das Runnable in asyncExec warum genau???...
Kann mir jemand kurz erläutern was der Code genau macht???
Nach meiner Auffassung führt er das TestRunnable parallel zum UI Thread auf und wenn man eine UI Componente anzeigt wartet das TestRunnable solange bis der UI Thread soweit ist um diese Componente anzeigen zu können, aber solange er keine UI Componente benötigt läuft er ganz normal ein eigenständiger Thread ... Ich denke dass jedes mal wenn das asyncExec(r); aufgerufen wird wird ein neuer Thread gestartet...
Code:
class T extends Thread
{
public void run()
{
final TestRunnable r = new TestRunnable();
try
{
while (!mDisplay.isDisposed())
{
synchronized (r)
{
mDisplay.asyncExec(r);
r.wait();
}
}
}
catch (InterruptedException e)
{
// End the loop
}
}
}
Eine Frage zu dem asyncExec... Startet das asyncExec jedes mal wenn es aufgerufen wird einen neuen Thread parallel zu dem UI Thread und die kommunizieren dann untereinander??? In dem TestRunnable werden wie ich sehe UI Sachen aufgerufen, dafür benötigt man das Runnable in asyncExec warum genau???...
Kann mir jemand kurz erläutern was der Code genau macht???
Nach meiner Auffassung führt er das TestRunnable parallel zum UI Thread auf und wenn man eine UI Componente anzeigt wartet das TestRunnable solange bis der UI Thread soweit ist um diese Componente anzeigen zu können, aber solange er keine UI Componente benötigt läuft er ganz normal ein eigenständiger Thread ... Ich denke dass jedes mal wenn das asyncExec(r); aufgerufen wird wird ein neuer Thread gestartet...