View Issue Details
|ID||Project||Category||View Status||Date Submitted||Last Update|
|0006450||MediaMonkey (current)||Now Playing||public||2010-08-27 10:35||2010-10-12 00:26|
|Target Version||4.0||Fixed in Version||4.0|
|Summary||0006450: Loading more than 10000 tracks to Now Playing can freeze UI for several seconds|
|Description||Select an Auto-playlist including more than 10k tracks and then right-click -> 'Play Last'|
=> UI freezes for several seconds, because this action doesn't seem to be performed in a thread
A side effect is that playback transition to the next track isn't fluently if the "Play Last" action is performed just at the moment.
|Additional Information||Ticket ID: TUB-193629|
Video at: http://www.mediamonkey.com/forum/viewtopic.php?f=7&t=52298#p267979
|Tags||No tags attached.|
|Fixed in build||1314|
||I wouldn't like to introduce a thread for all such actions. I suppose that this isn't that complex one and a non-debug build should be able to handle 10000s tracks on a reasonably modern machine easily. Have you had a look whether we don't do anything unnecessarily at this moment?|
You are right, I debugged it and in fact what is slowing things down is
procedure TFPlaylist.RefreshItems(itemStart, itemEnd: integer);
that is responsible for visual update, i.e. nothing that could be resolved by using a thread.
I optimized the procedure.
All is performed in a fraction of second now.
Fixed in build 1314.