Titanium JIRA Archive
Titanium SDK/CLI (TIMOB)

[TIMOB-20316] Windows: Make use of an LRU cache for cached property values

GitHub Issuen/a
TypeStory
PriorityMedium
StatusResolved
ResolutionWon't Do
Resolution Date2020-06-30T14:48:51.000+0000
Affected Version/sRelease 5.1.0
Fix Version/sn/a
ComponentsWindows
Labelsn/a
ReporterKota Iguchi
AssigneeChristopher Williams
Created2016-02-02T17:51:50.000+0000
Updated2020-06-30T14:48:52.000+0000

Description

Kota made great strides in eliminating a large source of memory hogging going on: storing all constant property values in fields of the enclosing type. We'd not only store them for the class definition but also for every instance! Now that we store them in an unordered_map and generate them on-demand they're only cached once per class. But it'd be a good improvement to move to something like an LRU cache to evict older constants out of the in-memory cache if we ever need to free some memory. It'd be good to have more details on just how much memory these are taking up and what the speed/perf overhead of always generating them on-demand would be (or if that'd even be feasible whether the constants would be considered equal when regenerated).

Comments

  1. Kota Iguchi 2016-03-08

    https://github.com/appcelerator/HAL/pull/61
  2. Ewan Harris 2016-07-04

    [~kota] It looks like https://github.com/appcelerator/titanium_mobile_windows/pull/576 didn't get merged? Does this ticket need to be moved out of 5.4.0?
  3. Kota Iguchi 2016-07-05

    Right. Reopened and moved out of 5.4.0.

JSON Source