From a9c4d59537e21d2d069749ff9135f65ed39ba080 Mon Sep 17 00:00:00 2001 From: Andrew Johnson Date: Mon, 31 Aug 2015 11:52:32 -0500 Subject: [PATCH] Applied Ambroz Bizjak's timerQueueActive.patch --- src/libCom/timer/epicsTimer.cpp | 8 ++++---- src/libCom/timer/timerPrivate.h | 8 ++++---- src/libCom/timer/timerQueueActive.cpp | 12 ++++++++---- 3 files changed, 16 insertions(+), 12 deletions(-) diff --git a/src/libCom/timer/epicsTimer.cpp b/src/libCom/timer/epicsTimer.cpp index 7cdc30bd3..1acdc08c6 100644 --- a/src/libCom/timer/epicsTimer.cpp +++ b/src/libCom/timer/epicsTimer.cpp @@ -1,11 +1,10 @@ /*************************************************************************\ -* Copyright (c) 2002 The University of Chicago, as Operator of Argonne +* Copyright (c) 2015 UChicago Argonne LLC, as Operator of Argonne * National Laboratory. * Copyright (c) 2002 The Regents of the University of California, as * Operator of Los Alamos National Laboratory. -* EPICS BASE Versions 3.13.7 -* and higher are distributed subject to a Software License Agreement found -* in file LICENSE that is included with this distribution. +* EPICS BASE is distributed subject to a Software License Agreement found +* in file LICENSE that is included with this distribution. \*************************************************************************/ /* * $Revision-Id$ @@ -71,6 +70,7 @@ epicsTimerQueueActiveForC :: bool okToShare, unsigned priority ) : timerQueueActive ( refMgr, okToShare, priority ) { + timerQueueActive::start(); } epicsTimerQueueActiveForC::~epicsTimerQueueActiveForC () diff --git a/src/libCom/timer/timerPrivate.h b/src/libCom/timer/timerPrivate.h index a5afc0df9..dadd8daa4 100644 --- a/src/libCom/timer/timerPrivate.h +++ b/src/libCom/timer/timerPrivate.h @@ -1,11 +1,10 @@ /*************************************************************************\ -* Copyright (c) 2002 The University of Chicago, as Operator of Argonne +* Copyright (c) 2015 UChicago Argonne LLC, as Operator of Argonne * National Laboratory. * Copyright (c) 2002 The Regents of the University of California, as * Operator of Los Alamos National Laboratory. -* EPICS BASE Versions 3.13.7 -* and higher are distributed subject to a Software License Agreement found -* in file LICENSE that is included with this distribution. +* EPICS BASE is distributed subject to a Software License Agreement found +* in file LICENSE that is included with this distribution. \*************************************************************************/ /* * $Revision-Id$ @@ -136,6 +135,7 @@ class timerQueueActive : public epicsTimerQueueActive, public: typedef epicsSingleton < timerQueueActiveMgr > :: reference RefMgr; timerQueueActive ( RefMgr &, bool okToShare, unsigned priority ); + void start (); epicsTimer & createTimer (); epicsTimerForC & createTimerForC ( epicsTimerCallback pCallback, void *pArg ); void show ( unsigned int level ) const; diff --git a/src/libCom/timer/timerQueueActive.cpp b/src/libCom/timer/timerQueueActive.cpp index a1c25f4a0..6225b11a0 100644 --- a/src/libCom/timer/timerQueueActive.cpp +++ b/src/libCom/timer/timerQueueActive.cpp @@ -1,13 +1,13 @@ /*************************************************************************\ -* Copyright (c) 2002 The University of Chicago, as Operator of Argonne +* Copyright (c) 2015 UChicago Argonne LLC, as Operator of Argonne * National Laboratory. * Copyright (c) 2002 The Regents of the University of California, as * Operator of Los Alamos National Laboratory. -* EPICS BASE Versions 3.13.7 -* and higher are distributed subject to a Software License Agreement found -* in file LICENSE that is included with this distribution. +* EPICS BASE is distributed subject to a Software License Agreement found +* in file LICENSE that is included with this distribution. \*************************************************************************/ /* + * $Revision-Id$ * * Author Jeffrey O. Hill * johill@lanl.gov @@ -49,6 +49,10 @@ timerQueueActive :: epicsThreadGetStackSize ( epicsThreadStackMedium ), priority ), sleepQuantum ( epicsThreadSleepQuantum() ), okToShare ( okToShareIn ), exitFlag ( false ), terminateFlag ( false ) +{ +} + +void timerQueueActive::start () { this->thread.start (); }