Gordon Sim wrote:
On 08/22/2011 07:43 AM, Toralf Lund wrote:
Is there any way to tell if close() has been called on an
qpid::messaging::Session (in the C++ API)? There is no isClosed() or
isOpen() method on this class... It does seem like isError() will be
set, but can I rely on this? And how can I distinguish between a closed
session and a session with send(er) or receiver(er) error?

Related question: Do I need to close a session where an error has been
raised and isError() is true, or can I safely throw away the reference
without getting memory leaks? (If I can, I don't really need to know if
close() has been called.)

The connection holds a list of associated sessions and an error does not cause the session to be removed. It is therefore best to close the session, ending the association with the connection.
Fair enough.

What if I close a session that turns out already to be closed? Does this cause any problems?

I agree that an isOpen() method or equivalent on the session would be useful.
Good.

- Toralf


---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:[email protected]



This e-mail, including any attachments and response string, may contain 
proprietary information which is confidential and may be legally privileged. It 
is for the intended recipient only. If you are not the intended recipient or 
transmission error has misdirected this e-mail, please notify the author by 
return e-mail and delete this message and any attachment immediately. If you 
are not the intended recipient you must not use, disclose, distribute, forward, 
copy, print or rely on this e-mail in any way except as permitted by the author.

---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:[email protected]

Reply via email to