[
Date Prev][
Date Next][
Thread Prev][
Thread Next][
Date Index][
Thread Index]
[
List Home]
Re: [eclipse-incubator-e4-dev] Initial discussion onthe'modelled'workbench UI
|
One gotcha with asynchronous processing of notifications is that during the
notification's processing, the model may no longer be in the state it was
in at the time the notification was sent. It's also clear that it can be
problematic for the model to be changing on one thread, while the UI is
reading it for display/view purposes on a different thread. So
asynchronous processing introduces new problems as well as solving old
problems. The issue of reading a model that might be subject to
simultaneous change on a different thread seems to require the use of some
type of locking or exclusion mechanism which naturally reintroduces the
very same deadlock problem that asynchronous processing was intended to
help solve in the first place.
Ed Merks/Toronto/IBM@IBMCA
mailto: merks@xxxxxxxxxx
905-413-3265 (t/l 313)
John
Arthorne/Ottawa/I
BM@IBMCA To
Sent by: E4 developer list
eclipse-incubator <eclipse-incubator-e4-dev@eclipse.o
-e4-dev-bounces@e rg>
clipse.org cc
Subject
04/07/2008 07:48 Re: [eclipse-incubator-e4-dev]
AM Initial discussion
onthe'modelled'workbench UI
Please respond to
E4 developer list
<eclipse-incubato
r-e4-dev@eclipse.
org>
It would be a radical change, but you may want to consider making all
events asynchronous. This would have solved many problems in our old API,
but was never doable in a backwards compatible way. Asynchronous event
notification to clients offers lots of advantages - reduced deadlock,
increased responsiveness, etc. If the UI model can be manipulated in any
thread, then you may be able to keep client code out of the UI thread
entirely!
John
eclipse-incubator-e4-dev-bounces@xxxxxxxxxxx wrote on 04/07/2008 06:02:37
AM:
> Hi all,
>
> one more thing I think we need to discuss is whether we really want to
> allow any arbitary plugin register as a listener on our model.
>
> This has the drawback that if one missbehaving listener is added to our
> model everybody is blocked! In a Plugin-Env where we don't control them
> this a dangerous thing, not?
>
> Wouldn't it be wiser to decouple this using a Message-Bus-Pattern? What
> do you think?_______________________________________________
eclipse-incubator-e4-dev mailing list
eclipse-incubator-e4-dev@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/eclipse-incubator-e4-dev