View Issue Details

IDProjectCategoryView StatusLast Update
0018395MediaMonkey 5Otherpublic2022-04-07 12:18
ReporterLudek Assigned To 
Status closedResolutionfixed 
Product Version5.0 
Target Version5.1 
Summary0018395: Optimize shared lists access
DescriptionPer IM discussion re performance issues while traversing large SharedLists:

1. Review current Fast access implementation (list.getFastObject), whether there isn't any bug.

2. Direct access to a List content (or subset of its properties). This will always be faster than 1. We could evaluate both custom Delphi code creating the JS values, or the JSON route. I suppose that the former would be faster.
i.e. introducing list.getAllValues( property) that would return JS array of the property for all list items

3. Review WebWorkers usage. When we did in the past, it wasn't easily possible to use them through CEF from Delphi, but I suppose that the situation might have changed since and their usage could get some load off the main JS thread.
TagsNo tags attached.
Fixed in build


related to 0018394 closedmichal (Performance) Use asJSON instead of fastForEach in Dropdown._setAutoWidth 



2021-10-07 13:01

administrator   ~0065015

Petr, please have a look at 1&3.

2. can be implemented by anyone, in cooperation with Jordan.


2021-10-15 10:48

developer   ~0065225

Last edited: 2021-10-15 10:49

View 2 revisions

2) is implemented in 2509 (SVN revision 38714)


2021-10-16 21:08

developer   ~0065262

2) Verified 2510


2021-10-18 17:33

developer   ~0065287

1) i've made some tests and getFastObject method in regular build is more than 50% faster (accessing 9k tracks took 2.2secs in debug, and 0.9sec in regular).