[rabbitmq-discuss] IModel Dispose locks if called during ConnectionShutdown event
Mark Ward
ward.mark at gmail.com
Thu Sep 20 19:40:41 BST 2012
I may have found the area of the deadlock.
RabbitMQ.Util.BlockingCell
In the Value get on the Monitor.wait(this);
On Thursday, September 20, 2012 1:32:26 PM UTC-5, Mark Ward wrote:
>
> Hi,
>
> 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?
>
> -Mark
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.rabbitmq.com/pipermail/rabbitmq-discuss/attachments/20120920/29e809af/attachment.htm>
More information about the rabbitmq-discuss
mailing list