Experimental Physics and Industrial Control System
Hi Michael,
On 05/30/2017 07:54 PM, Michael Davidsaver wrote:
> On 05/30/2017 06:42 PM, Andrew Johnson wrote:
>> On 05/25/2017 09:06 AM, Michael Davidsaver wrote:
>>> My first though would be to use initHooks.h. So I'd like to add
>>>
>>> * initHookAtShutdown - at start of iocShutdown()
initHookAtIocShutdown please, to match other initHookAtIoc* names.
>>> * initHookAfterCloseLinks - after dbCaShutdown()
Ok.
>>> * initHookAtStopped - Just after iocShutdown() returns
A hook announced at the end of iocShutdown() should be named
initHookAfterIocStopped to match the others. If you want notification
that the process is exiting can't you register your own epicsAtExit()
handler? As long as you do so before initDatabase() your handler would
be run after exitDatabase() does.
> I'm going to add the (de) initHooks anyway as this is something would
> have been helpful to me before for driver work.
Ok. Don't forget to add the new state names to the array in
initHooks.c::initHookName().
> I don't see what you're getting at wrt. dbServer. How would this be
> cleaner than an initHook? Seems the same to me. Were you thinking to
> pass in some additional arguments?
It has the same effect, but I usually regard initHooks as a way to let
applications run code at points where we don't provide a standard
extension API. The dbServer interface was intended to become a standard
extension point for servers, with methods for everywhere the IOC needs
to call up to the registered server layers. By adding init(), run() and
pause() methods to dbServer we should be able to compile iocInit.c
independently of rsrv, and hence plug in server layers at run-time.
There should be one or more close/shutdown methods too, but rsrv doesn't
have any, so qsrv could be a model for what's needed there.
>> Will QSRV support pausing? This was added for DESY's hot-standby work; I
>> don't see it as particularly important, but QSRV should probably display
>> a warning message when someone tries to use it if it's not supported.
>
> No plans. I hadn't considered this as I've never paused RSRV.
I'm going to guess it could be tricky to add, but might be worth at
least thinking about what's needed. I don't think DESY are the only site
using the redundancy stuff.
- Andrew
--
Arguing for surveillance because you have nothing to hide is no
different than making the claim, "I don't care about freedom of
speech because I have nothing to say." -- Edward Snowdon
- References:
- iocShutdown() hooks Michael Davidsaver
- Re: iocShutdown() hooks Andrew Johnson
- Re: iocShutdown() hooks Michael Davidsaver
- Navigate by Date:
- Prev:
Jenkins build is back to normal : epics-base-3.15-win64-test #114 APS Jenkins
- Next:
Re: iocShutdown() hooks Michael Davidsaver
- Index:
2002
2003
2004
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
<2017>
2018
2019
2020
2021
2022
2023
2024
- Navigate by Thread:
- Prev:
Re: iocShutdown() hooks Michael Davidsaver
- Next:
Re: iocShutdown() hooks Michael Davidsaver
- Index:
2002
2003
2004
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
<2017>
2018
2019
2020
2021
2022
2023
2024