Experimental Physics and Industrial Control System
> "jca.use_env" must be given via JVM (-D) option.
That's not strictly true. When using ImageJ using -D is inconvenient, because EPICS_AD_Viewer is a plugin, and we want users to be able to start ImageJ by just clicking on the familiar icon. I thus now set the jca.use_env property in the Java code just before initializing CA:
try
{
System.setProperty("jca.use_env", "true");
// Get the JCALibrary instance.
jca = JCALibrary.getInstance();
ctxt = jca.createContext(JCALibrary.CHANNEL_ACCESS_JAVA);
ctxt.initialize();
}
Mark
________________________________
From: [email protected] [[email protected]] on behalf of Matej Sekoranja [[email protected]]
Sent: Thursday, October 25, 2012 4:10 AM
To: Till Straumann
Cc: Chu, Paul; Mark Rivers; [email protected]
Subject: Re: JCA problems and questions
Till is right. It system env. (C++ style) or JCA style.
"jca.use_env" must be given via JVM (-D) option.
Matej
On Wed, Oct 24, 2012 at 1:04 AM, Till Straumann <[email protected]<mailto:[email protected]>> wrote:
Is that really true? The way I recall it (but it has been a while I dived into that subject) is
if use_env property is true then
1.
else
2.
3.
4.
endif
- T.
On 10/23/2012 11:01 PM, Chu, Paul wrote:
When I first implemented this feature at SLAC, I believe JCA or CAJ took the following override order (higher number overrides lower ones, e.g. 2 overrides 1):
1. EPICS environment variables
2. System level JCALibrary.properties (in system JRE or JDK's lib folder)
3. User level JCALibrary.properties (e.g. in user's ~/.JCALibrary for Linux)
4. Command line -D option
Paul
-----Original Message-----
From: [email protected]<mailto:[email protected]> [mailto:tech-talk-<mailto:tech-talk->
[email protected]<mailto:[email protected]>] On Behalf Of Mark Rivers
Sent: Tuesday, October 23, 2012 4:37 PM
To: 'Matej Sekoranja'; [email protected]<mailto:[email protected]>
Subject: RE: JCA problems and questions
Hi Matej,
Thanks for the reply.
Lewis also pointed out the new feature of caj.use_env to have CAJ use the
traditional EPICS environment variables. I am now using that in the
areaDetector ImageJ plugin. However, I have a couple of questions:
- What is the order of obtaining values from a JCALibrary.properties file
versus the EPICS environment variables?
- Is the new caj.use_env documented anywhere except the single line in the
change notes?
Thanks,
Mark
From: [email protected]<mailto:[email protected]> [mailto:tech-talk-<mailto:tech-talk->
[email protected]<mailto:[email protected]>] On Behalf Of Matej Sekoranja
Sent: Tuesday, October 23, 2012 3:33 PM
To: [email protected]<mailto:[email protected]>
Subject: Re: JCA problems and questions
Hi,
Rok Sabjan notified me about this thread. Thanks to Lewis for replies.
The old send buffer algorithm was to initialize the send buffer size
to max_array_bytes and automatically resize on demand (there is one send
buffer per TCP connection). Not something one would dare to use on a
server, however very convenient on the client side.
However, if a client has a lot of connections there is a lot of memory required
when max_array_bytes is large (e.g. 100 connection * 10MB = 1GB!).
Current algorithm starts with an initial size of 1k that can be automatically
resized up to max_array_bytes.
This also mimics C++ CA algorithm (that has also evolved over the years).
Cheers,
Matej
- References:
- Re: JCA problems and questions Matej Sekoranja
- RE: JCA problems and questions Mark Rivers
- RE: JCA problems and questions Chu, Paul
- Re: JCA problems and questions Till Straumann
- Re: JCA problems and questions Matej Sekoranja
- Navigate by Date:
- Prev:
Re: JCA problems and questions Matej Sekoranja
- Next:
Re: JCA problems and questions Jack Smith
- 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
2019
2020
2021
2022
2023
2024
- Navigate by Thread:
- Prev:
Re: JCA problems and questions Matej Sekoranja
- Next:
RE: JCA problems and questions Chu, Paul
- 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
2019
2020
2021
2022
2023
2024