Resolving deadlocks through UILockListener/UISynchronizer [message #493897] |
Wed, 28 October 2009 08:17  |
Eclipse User |
|
|
|
Hello rap people,
I have a situation, where the UIThread is blocked by a call to
ThreadJob#joinRun via JobManager#beginRule.
RCP solves this kind of a deadlock with help of UISynchronizer and
UILockListener.
In RAP there's no such a mechanism present. The code in Workbench#runUI
is commented out.
Cheers, Dmitry
|
|
|
Re: Resolving deadlocks through UILockListener/UISynchronizer [message #494146 is a reply to message #493897] |
Thu, 29 October 2009 07:24  |
Eclipse User |
|
|
|
The reason why UISynchronizer and UILockListener aren't present in
RAP is that RWT currently misses the Synchronizer code from SWT.
These two bugs are most likely also affected:
* 280829: [Display] calling syncExec/asyncExec(null)
behaves differently in SWT
https://bugs.eclipse.org/bugs/show_bug.cgi?id=280829
* 283490: Display.syncExec() leads to deadlock
https://bugs.eclipse.org/bugs/show_bug.cgi?id=283490
Chances are we can use the Synchronizer code from SWT. It compiles
almost immediately. The tricky part is to weave in the UICallback
mechanism. Once we are there, the Workbench parts should also work
as expected.
Regards,
Rüdiger
Dmitry Pryadkin wrote:
> Hello rap people,
>
> I have a situation, where the UIThread is blocked by a call to
> ThreadJob#joinRun via JobManager#beginRule.
>
> RCP solves this kind of a deadlock with help of UISynchronizer and
> UILockListener.
>
> In RAP there's no such a mechanism present. The code in Workbench#runUI
> is commented out.
>
> Cheers, Dmitry
|
|
|
Powered by
FUDForum. Page generated in 0.02871 seconds