EPICS Controls Argonne National Laboratory

Experimental Physics and
Industrial Control System

1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  2018  <20192020  2021  2022  2023  2024  Index 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  2018  <20192020  2021  2022  2023  2024 
<== Date ==> <== Thread ==>

Subject: Re: AsynDriver with delayed and async communication
From: Eric Norum via Tech-talk <[email protected]>
To: Joao Afonso <[email protected]>
Cc: "[email protected]" <[email protected]>
Date: Wed, 30 Jan 2019 11:13:07 -0800
I have implemented such support using an extra readback thread for devices that send out of order or unsolicited responses.  I’ve not used the callbackRequestDelayed mechanism that you mention — instead the records are set to SCAN=“I/O Intr” and the reader thread just pushes values into the records using the asyn xxxInterrupt->callback() support.


On Jan 30, 2019, at 9:09 AM, Joao Afonso via Tech-talk <[email protected]> wrote:

2) Use asynDriver:
 - From what I understood, it is possible to stop a callback and send it back to the queue using the 'callbackRequestDelayed()' EPICS function. This, with the help of a state machine, would allow the callback to be executed in two steps, and not block callbacks from other users. It seems to be similar to the approach taken on the asynDriver '<top>/testApp'.
 - In this case, a separate thread would receive all the results, and store them in a place where the callbacks would read later.
 - However, I don't know if it is fully compatible with asynDriver, or if asynDriver provides a better mechanism for this type of interaction. Is there a better approach?


References:
AsynDriver with delayed and async communication Joao Afonso via Tech-talk

Navigate by Date:
Prev: AsynDriver with delayed and async communication Joao Afonso via Tech-talk
Next: Re: calc record odd behavior Johnson, Andrew N. via Tech-talk
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  2018  <20192020  2021  2022  2023  2024 
Navigate by Thread:
Prev: AsynDriver with delayed and async communication Joao Afonso via Tech-talk
Next: FW: AsynDriver with delayed and async communication Mark Rivers via Tech-talk
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  2018  <20192020  2021  2022  2023  2024 
ANJ, 30 Jan 2019 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions · Download ·
· Search · EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing ·