-
Bug
-
Resolution: Fixed
-
P4
-
8
I changed several properties in Text/TextFlow to use SimpleProperty, see Richard's discussion on the mailing list:
The tradeoff between Simple* and *PropertyBase is dynamic vs. static footprint (heap size vs. class size). The Simple* guys have references to the bean & property name, and so require additional heap space to store this data, whereas the *PropertyBase guys don't, but require a subclass to override the getBean() & getName() methods. Generally we should be using the Simple* guys, unless we already had to override the property for the sake of the invalidated() method. In that case, since we're already paying the static footprint cost, it makes sense to use the *PropertyBase instead and save on dynamic footprint.
We should change it back as it reduces memory size required for each Text node.
The tradeoff between Simple* and *PropertyBase is dynamic vs. static footprint (heap size vs. class size). The Simple* guys have references to the bean & property name, and so require additional heap space to store this data, whereas the *PropertyBase guys don't, but require a subclass to override the getBean() & getName() methods. Generally we should be using the Simple* guys, unless we already had to override the property for the sake of the invalidated() method. In that case, since we're already paying the static footprint cost, it makes sense to use the *PropertyBase instead and save on dynamic footprint.
We should change it back as it reduces memory size required for each Text node.