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  <20092010  2011  2012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024  Index 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  <20092010  2011  2012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
<== Date ==> <== Thread ==>

Subject: Re-wrap CaChannel based on PythonCA
From: "Wang Xiaoqiang" <[email protected]>
To: "Noboru Yamamoto" <[email protected]>, "Krempasky Juraj" <[email protected]>, "Jud Gaudenz" <[email protected]>, "epics" <[email protected]>
Cc: Tatsuro NAKAMURA <[email protected]>, Norihiko Kamikubota <[email protected]>
Date: Thu, 5 Mar 2009 10:27:55 +0100
 

Hi pythoners,

If you ever used Geoff Savage's caPython/CaChannel extension in a
multithreaded program, you may know its limitation already: you can only
issue CA calls in the main thread. It is still using EPICS 3.13 API and
is not aware of the ca context attach/detach calls introduced in EPICS
3.14. 

At that time (July 2008), I am not aware the update done by John
Hammonds of APS. I only know Noboru Yamamoto of KEK has maintained a
thread-aware PythonCA extension over years, which provides a low level C
extension to CA library as well as a convenient high level class
"channel". 

For the sake of maintaining legacy codes, I write a new CaChannel class
with the same API as the old, using PythonCA C extension. Now it has be
used in SLS for months and the result is satisfactory. Without a single
line modified, programs using CaChannel, epicsPV, ca_utils run smoothly.
It provides "transparent" multithread support and no extra efforts have
to be taken for threaded CA calls.

Here is a short instruction on how to get the code,
http://controls.web.psi.ch/cgi-bin/twiki/view/Main/NewPythonEpicsInterfa
ce#Install

If this CaChannel does not work for you, please kindly let me know the
reason. I would like to thank Noboru Yamamoto to merge my changes and
please contact him if it blows up your computer :D. 

--
Dr. Xiaoqiang Wang
Paul Scherrer Institut, WBGB/010
5232 Villigen PSI, Switzerland


Navigate by Date:
Prev: RE: Variable size frame Mark Rivers
Next: Re: Help with streamDevice parsing HTML Dirk Zimoch
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  <20092010  2011  2012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
Navigate by Thread:
Prev: Re: Help with streamDevice parsing HTML Dirk Zimoch
Next: Varian Turbo Pump Controllers Dave Reid
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  <20092010  2011  2012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
ANJ, 31 Jan 2014 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions · Download ·
· Search · EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing ·