>
> It is a dictionary for speed reasons. A user might trigger trigger
> thousands of events per seconds and iterating through large flat lists
> can be very slow if there are many handlers.
>

Where is speedup improvements? In code that I found in Pharo 1.1 there is
simple iteration by all dictionary items. And I think there is no places for
speed improvements because subscribers can subscribers for announcement
hierarchy (not concrete class).

Announcer>>announce: anAnnouncement
    | announcement |
    announcement := anAnnouncement asAnnouncement.
    subscriptions ifNil: [ ^ announcement ].
    subscriptions keysAndValuesDo: [ :class :actions |
        (class handles: announcement)
            ifTrue: [ actions valueWithArguments: (Array with: announcement)
] ].
    ^ announcement
_______________________________________________
Pharo-project mailing list
[email protected]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project

Reply via email to