mirror of
https://github.com/rofafor/vdr-plugin-satip.git
synced 2023-10-10 13:37:42 +02:00
Reduced locking scope for a performance improvement.
Reduced the time that cSatipTunerStatistics() is locked. This is important for poller thread as every lock in cSatipTunerStatistics() leads to the poller thread waiting in SatipTuner::ProcessVideoData().
This commit is contained in:
parent
4600a2a070
commit
561ca26098
@ -150,14 +150,16 @@ cSatipTunerStatistics::~cSatipTunerStatistics()
|
|||||||
cString cSatipTunerStatistics::GetTunerStatistic()
|
cString cSatipTunerStatistics::GetTunerStatistic()
|
||||||
{
|
{
|
||||||
//debug("cSatipTunerStatistics::%s()", __FUNCTION__);
|
//debug("cSatipTunerStatistics::%s()", __FUNCTION__);
|
||||||
cMutexLock MutexLock(&mutexM);
|
mutexM.Lock();
|
||||||
uint64_t elapsed = timerM.Elapsed(); /* in milliseconds */
|
uint64_t elapsed = timerM.Elapsed(); /* in milliseconds */
|
||||||
timerM.Set();
|
timerM.Set();
|
||||||
long bitrate = elapsed ? (long)(1000.0L * dataBytesM / KILOBYTE(1) / elapsed) : 0L;
|
long bitrate = elapsed ? (long)(1000.0L * dataBytesM / KILOBYTE(1) / elapsed) : 0L;
|
||||||
|
dataBytesM = 0;
|
||||||
|
mutexM.Unlock();
|
||||||
|
|
||||||
if (!SatipConfig.GetUseBytes())
|
if (!SatipConfig.GetUseBytes())
|
||||||
bitrate *= 8;
|
bitrate *= 8;
|
||||||
cString s = cString::sprintf("%ld k%s/s", bitrate, SatipConfig.GetUseBytes() ? "B" : "bit");
|
cString s = cString::sprintf("%ld k%s/s", bitrate, SatipConfig.GetUseBytes() ? "B" : "bit");
|
||||||
dataBytesM = 0;
|
|
||||||
return s;
|
return s;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user