On Sun, Jun 9, 2013 at 1:59 AM, Tom Metro <[email protected]>wrote:

> Jon Gettler wrote:
> > The only way to purge the list first would be to clear the GUI, which
> > could be disruptive to the user.
>
> Meaning you might be navigating through the show list and suddenly the
> list entirely disappears, pauses while the reload happens, and then you
> have to start navigating again from the top of the hierarchy?
>
> Agreed, that would be disruptive, but once you've exceeded the memory
> threshold, the reality is equally disruptive: you're navigating through
> the show list and suddenly mvpmc puts up a partially rendered "please
> wait" dialog and hangs, your only recourse is to power cycle, and then
> you have to start navigating again from the top of the hierarchy.
>

After looking at the code, it would be relatively trivial to ensure that
the first program list is freed prior to loading the second one (change
load_episodes() to free the old list first).  The problem would be that you
would introduce a race condition such that if the reload occurred at the
same time as the new list was being loaded, the GUI would probably present
an empty list.

It is better than locking up, but still not ideal.


> > A more "clever" way...the code could recognize that a proginfo
> > structure is a duplicate, and increment the reference on the original
> > and toss the duplicate.
>
> Agreed. Though more code to accomplish that, and performing the
> duplicate checks will probably slow down loading the show list.
>
> In any case, handling the refresh problem doesn't go far enough once
> you've exceeded a second capacity threshold. If I don't "hide" a portion
> of my show database from mvpmc, even a single copy of the show database
> loaded into memory causes the UI to slow down to be barely usable, and
> it impacts playback such that it is very difficult to achieve audio sync.
>
> So if I was prioritizing between these two hypothetical enhancement, I'd
> consider filtering on recording group to be far more useful.
>

Currently, you can use the config file to save your settings for which
program groups to hide.  However, the program list is pruned after it is
entirely loaded, so I guess that isn't a solution for you.  To solve your
problem, you'd probably need to pass some sort of filter to libcmyth so
only a partial list is returned.

BTW, any idea how many recordings you need to run the MediaMVP out of
memory?

Jon
------------------------------------------------------------------------------
How ServiceNow helps IT people transform IT departments:
1. A cloud service to automate IT design, transition and operations
2. Dashboards that offer high-level views of enterprise services
3. A single system of record for all IT processes
http://p.sf.net/sfu/servicenow-d2d-j
_______________________________________________
Mvpmc-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/mvpmc-users
mvpmc wiki: http://mvpmc.wikispaces.com/

Reply via email to