home
products
contribute
download
documentation
forum
Home
Forums
New posts
Search forums
What's new
New posts
All posts
Latest activity
Members
Registered members
Current visitors
Donate
Log in
Register
What's new
Search
Search
Search titles only
By:
New posts
Search forums
Search titles only
By:
Menu
Log in
Register
Navigation
Install the app
Install
More options
Contact us
Close Menu
Forums
MediaPortal 1
MediaPortal 1 Talk
Memory leak in TVService
Contact us
RSS
JavaScript is disabled. For a better experience, please enable JavaScript in your browser before proceeding.
You are using an out of date browser. It may not display this or other websites correctly.
You should upgrade or use an
alternative browser
.
Reply to thread
Message
<blockquote data-quote="mm1352000" data-source="post: 1283260" data-attributes="member: 82144"><p>Hello</p><p></p><p>First, thanks for reporting.</p><p></p><p>It's possible there is a leak. Always possible. The tricky thing about reporting a memory leak based on task manager's memory details is that TvService is a .NET process. That means garbage collection (freeing of memory that's no longer required) is an automatic and unpredictable background process. From a code perspective TvService can have finished using a particular chunk of memory, but task manager will report that the memory is still being used until the .NET garbage collector cleans up. This makes it difficult to determine whether a leak has actually occurred, and also difficult to determine when and where (in code) the leak is.</p><p></p><p>Some clarification questions...</p><p></p><p></p><p>Would it be fair to say that you expect TvService's memory usage to have remained the same over those 7.5 hours (because live TV wasn't used and there were no recordings in that timeframe)?</p><p></p><p>I note that even when TvService isn't streaming live TV or recording, it may perform various other background tasks. The most common is possibly updating program guide data. Is it possible that your TvService ran background tasks in the 7.5 hours you referred to? (If yes, this - in combination with the .NET garbage collection mentioned above - may explain the task manager numbers.)</p><p></p><p></p><p>Would it be fair to say that after the recordings and playback finished you expect TvService's memory usage to have returned to the usage observed shortly after system restart?</p><p></p><p>I note that there's at least one reason - in addition to the .NET garbage collection mentioned above - that this may not happen. That is: tuners are not "unloaded" until the TvService is stopped. By default TvService loads tuners as required to enable streaming and/or recording. Loading each tuner requires some memory usage. That memory won't be released until the tuners are unloaded when the TvService process is stopped. In other words, it's pretty normal for memory usage to be XYZ immediately after the TvService starts... then for memory usage to increase when the TvService is streaming and/or recording... and for memory usage to not go back down to XYZ when streaming and recording stop.</p><p></p><p></p><p>Are you saying that at one time TvService did not leak for you, and now it does?</p><p>...or is it possible that TvService has always leaked, and you didn't notice until several versions ago?</p><p></p><p>Do you remember - or are you able to determine - which version of MediaPortal you were using when you first noticed the leak?</p></blockquote><p></p>
[QUOTE="mm1352000, post: 1283260, member: 82144"] Hello First, thanks for reporting. It's possible there is a leak. Always possible. The tricky thing about reporting a memory leak based on task manager's memory details is that TvService is a .NET process. That means garbage collection (freeing of memory that's no longer required) is an automatic and unpredictable background process. From a code perspective TvService can have finished using a particular chunk of memory, but task manager will report that the memory is still being used until the .NET garbage collector cleans up. This makes it difficult to determine whether a leak has actually occurred, and also difficult to determine when and where (in code) the leak is. Some clarification questions... Would it be fair to say that you expect TvService's memory usage to have remained the same over those 7.5 hours (because live TV wasn't used and there were no recordings in that timeframe)? I note that even when TvService isn't streaming live TV or recording, it may perform various other background tasks. The most common is possibly updating program guide data. Is it possible that your TvService ran background tasks in the 7.5 hours you referred to? (If yes, this - in combination with the .NET garbage collection mentioned above - may explain the task manager numbers.) Would it be fair to say that after the recordings and playback finished you expect TvService's memory usage to have returned to the usage observed shortly after system restart? I note that there's at least one reason - in addition to the .NET garbage collection mentioned above - that this may not happen. That is: tuners are not "unloaded" until the TvService is stopped. By default TvService loads tuners as required to enable streaming and/or recording. Loading each tuner requires some memory usage. That memory won't be released until the tuners are unloaded when the TvService process is stopped. In other words, it's pretty normal for memory usage to be XYZ immediately after the TvService starts... then for memory usage to increase when the TvService is streaming and/or recording... and for memory usage to not go back down to XYZ when streaming and recording stop. Are you saying that at one time TvService did not leak for you, and now it does? ...or is it possible that TvService has always leaked, and you didn't notice until several versions ago? Do you remember - or are you able to determine - which version of MediaPortal you were using when you first noticed the leak? [/QUOTE]
Insert quotes…
Verification
Post reply
Forums
MediaPortal 1
MediaPortal 1 Talk
Memory leak in TVService
Contact us
RSS
Top
Bottom