On Sun, May 8, 2016 at 4:54 PM, Stephan Eggermont <step...@stack.nl> wrote:

> On 08-05-16 09:59, stepharo wrote:
>
>> > We did an experience by trying to remove the valueHolder is >
>>
> ButtonPresenter but it led to refresh problem when we want to update > the
> widget.
>
> If we want to have such fine-grained change propagation with a
> NewValueHolder for each widgetproperty, we need a much more lightweight
> announcement proces.
> NewValueHolder initializes a boolean lock and an Announcer. The announcer
> initializes a SubscriptionRegistry. The subscriptionregistry initializes a
> Semaphore and an IdentitySet. An identityset initializes with a tally and a
> size of 5. If we know most valueholders never need to propagate a change,
> and most of the others only to one subscriber,  we should introduce some
> null/one objects.


We should have metrics for this… otherwise seeing what's the actual impact
is a guesswork. Most ValueHolders will have at least (and usually) one
subscriber — the adapter. But a lightweight announcer might be better. Or
use a different mechanism, although I have no idea what kind.


> Alternatively, we could propagate change at the widget level instead of
> the property.


So Spec would talk to Adapter? That's exactly what we are trying to avoid.

Reply via email to