[ https://issues.apache.org/jira/browse/AMQNET-338?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13845673#comment-13845673 ]
Jim Gomes commented on AMQNET-338: ---------------------------------- I've just encountered this problem today, and had my app running under the debugger. I found that there is a race condition in the shutdown code that can cause the thread that is being requested to shutdown to block on the {{lock(myLock)}} call. This is easily fixed by moving the waiting code outside of the lock section. I will check in my code changes to trunk for testing. > TcpTransport.cs - Close() taking 30 seconds > ------------------------------------------- > > Key: AMQNET-338 > URL: https://issues.apache.org/jira/browse/AMQNET-338 > Project: ActiveMQ .Net > Issue Type: Bug > Components: ActiveMQ > Affects Versions: 1.5.1, 1.5.6 > Environment: Windows 7, .NET 2.0, Visual Studio 2008, Unity 3.4 > Reporter: Eddie Fast > > We've been noticing a random freeze on exit for 30 seconds. The frequency is > different per machine, but it happens about 10-30% of the time, sometimes > more. We've traced it down to TcpTransport.Close(), in this block: > {noformat} > if(null != readThread) > { > if(Thread.CurrentThread != readThread && readThread.IsAlive) > { > if(!readThread.Join((int) MAX_THREAD_WAIT.TotalMilliseconds)) > { > readThread.Abort(); > } > } > readThread = null; > } > {noformat} > We're running this in the Unity game engine, which run C# script in a Mono > environment. > I understand that reproducing this on your end would be difficult, but I'm > reporting this in the hopes that I can gain some insight why this is > happening. > - What thread is this code waiting for? > - What would be some of the causes of the deadlock? > No messages are being sent or received. It's basically starting up and > closing down. > Our temporary workaround is to reduce this wait time from 30 seconds to 5 > seconds, but I'd like to eventually find a cause. > Thanks -- This message was sent by Atlassian JIRA (v6.1.4#6159)