mirror of
https://github.com/VDR4Arch/vdr.git
synced 2023-10-10 13:36:52 +02:00
Moved cleaning up the EPG data and writing the epg.data file into a separate thread (cont'd)
This commit is contained in:
parent
62dee6514a
commit
c5dfaf9681
5
epg.c
5
epg.c
@ -7,7 +7,7 @@
|
|||||||
* Original version (as used in VDR before 1.3.0) written by
|
* Original version (as used in VDR before 1.3.0) written by
|
||||||
* Robert Schneider <Robert.Schneider@web.de> and Rolf Hakenes <hakenes@hippomi.de>.
|
* Robert Schneider <Robert.Schneider@web.de> and Rolf Hakenes <hakenes@hippomi.de>.
|
||||||
*
|
*
|
||||||
* $Id: epg.c 2.19 2012/09/24 13:24:02 kls Exp $
|
* $Id: epg.c 2.20 2012/09/29 11:49:11 kls Exp $
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include "epg.h"
|
#include "epg.h"
|
||||||
@ -1123,6 +1123,8 @@ bool cSchedule::Read(FILE *f, cSchedules *Schedules)
|
|||||||
// --- cEpgDataWriter ---------------------------------------------------------
|
// --- cEpgDataWriter ---------------------------------------------------------
|
||||||
|
|
||||||
class cEpgDataWriter : public cThread {
|
class cEpgDataWriter : public cThread {
|
||||||
|
private:
|
||||||
|
cMutex mutex;
|
||||||
protected:
|
protected:
|
||||||
virtual void Action(void);
|
virtual void Action(void);
|
||||||
public:
|
public:
|
||||||
@ -1144,6 +1146,7 @@ void cEpgDataWriter::Action(void)
|
|||||||
|
|
||||||
void cEpgDataWriter::Perform(void)
|
void cEpgDataWriter::Perform(void)
|
||||||
{
|
{
|
||||||
|
cMutexLock MutexLock(&mutex); // to make sure fore- and background calls don't cause parellel dumps!
|
||||||
{
|
{
|
||||||
cSchedulesLock SchedulesLock(true, 1000);
|
cSchedulesLock SchedulesLock(true, 1000);
|
||||||
cSchedules *s = (cSchedules *)cSchedules::Schedules(SchedulesLock);
|
cSchedules *s = (cSchedules *)cSchedules::Schedules(SchedulesLock);
|
||||||
|
Loading…
Reference in New Issue
Block a user