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 | 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 |
<== Date ==> | <== Thread ==> |
---|
Subject: | Re: CAJ questions |
From: | Matej Sekoranja <[email protected]> |
To: | Mark Rivers <[email protected]> |
Cc: | [email protected] |
Date: | Wed, 5 Aug 2009 14:11:58 +0200 |
HI,
I have another question about CAJ, relating to the property "max_array_bytes".I am not setting the "max_array_bytes" property in a properties file orin my application. When I call context.printInfo in my running application I get the following: context.printfInfo **************************** CLASS : com.cosylab.epics.caj.CAJContext ADDR_LIST : localhost 164.54.160.255 AUTO_ADDR_LIST : false CONNECTION_TIMEOUT : 30.0 BEACON_PERIOD : 15.0 REPEATER_PORT : 5065 SERVER_PORT : 5064 MAX_ARRAY_BYTES : 16384 The value of MAX_ARRAY_BYTES is 16384, the default, as I expect.However, my application is using CAJ to read arrays that are over 1.2MBwith no errors! Is the max_array_bytes property actually not used in CAJ? It looks like it must be being ignored?
Well, CAJ does not ignore this property. It preallocates its buffers using MAX_ARRAY_BYTES value. However, if server sends a bigger array it replaces buffer with newly allocated (bigger one).
(This is not optimal regarding resource allocation, but it's very convenient on client side. I can put a "hard" limit there, if you wish...)
Matej