[rabbitmq-discuss] IModel Dispose locks if called during ConnectionShutdown event

Mark Ward ward.mark at gmail.com
Thu Sep 20 19:32:26 BST 2012


I have a framework that upon receiving an event from the 
IConnection.ConnectionShutdown event will call dispose for all IModel it 
has.  What I have found is the IModel.Dispose or IModel.Close will lock up 
and is blocked if called from the ConnectionShutdown event handler.  I am 
not sure if this is expected behavior of the IModel to lock up like this. 
 I understand the closing of the connection will clean up all models and I 
may look into making my code detect if during a ConnectionShutdown event to 
not dispose or close the model as the connection will manage this.

Is it expected for IModel dispose/close to lock if called during a 
ConnectionShutdown event?  If it is expected I assume it will be okay to 
null the reference to the models on the connection that fired the 
ConnectionShutdown event and not cause any problems?


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.rabbitmq.com/pipermail/rabbitmq-discuss/attachments/20120920/326cd347/attachment.htm>

More information about the rabbitmq-discuss mailing list