[vdr] Centralized 'thread active' handling
gunnar.roth at gmx.de
Sat Aug 13 17:10:36 CEST 2005
Klaus Schmidinger wrote:
> Stefan Huelswitt wrote:
>> On 13 Aug 2005 Klaus Schmidinger <Klaus.Schmidinger at cadsoft.de> wrote:
>>> Fixed a race condition in cTransfer (thanks to Klaus ??? for
>>> reporting this one).
>>> In doing so, the 'active' variables used by the actual derived
>>> cThread classes
>>> have been replaced by the cThread::Active() function. The previous
>>> of cThread::Active() has been moved into the new cThread::Running().
>>> Plugin authors should check their derived cThread classes and
>>> replace any 'active'
>>> variables the same way as, for instance, done in transfer.c.
>> Wouldn't it be better to leave Active() untouched (instead of
>> renaming to Running()) and create a new (differently named)
>> function for the active var replacement? (e.g. Continue(), which
>> would give good readability with while(Continue()))
> Well, Active() reflects the internal 'active' variable, so
> Continue() would have to correspond to 'continue', which is
> a reserved keyword...
What has the name of a method to do with te name of a internal variable?
>> This would limit the impact this change has to plugins.
>> Otherwise a plugins using Active() now, could compile fine with
>> the next VDR version, but certainly wouldn't work correctly.
> Is there any plugin that actually uses cThread::Active()?
/In the vbox plugin i use some code from mp3 plugin and there i have a
Active() call which simply returns active member of cTrhead.
IMO what stfean huelswitt says , is right.
More information about the vdr