我从MQQUEUE和MQQueueManager断开与下面的代码:当从WebSphere MQ断开与C#客户端的TCP连接仍处于CLOSE_WAIT状态
Queue.Close(); log.Info("Queue IsOpen: " + Queue.IsOpen.ToString()); Queue = null; QueueManager.Disconnect(); QueueManager.Close(); log.Info("QM IsOpen: " + QueueManager.IsOpen.ToString()); log.Info("QM IsConnected: " + QueueManager.IsConnected.ToString()); QueueManager = null;
,我得到了下面的日志条目是:
Queue IsOpen: false QM IsOpen: false QM IsConnected: false
但后几个小时,当我运行从命令提示符的netstat -n命令我得到的那些连接到MQ服务器和国家连接的一个长长的清单是CLOSE_WAIT。
任何想法为什么TCP连接没有完全关闭?有什么办法可以杀死那些代码吗?目前,我将不得不重新启动客户端应用程序,清理打开的连接。
WebSphere MQ的版本是6.0.2.6和.NET库从MQ 7
我不知道为什么这被接受为答案。提出了多种解决方法,其中一个“可能”解决了这个问题,但没有提供明确的解决方案。拿下一票。 – theKing 2013-09-03 23:59:46
问题中没有足够的信息来提供确定的解决方案。根据所提供的信息,我提供了OP显然足以解决问题的信息。所以我采取了一个投票,因为OP没有麻烦更新他的问题? downvote没有得到更好的答案,如果你问自己的问题,很可能会导致你被你想要回复的人忽视。恕我直言,这既不富有成效也不合适。 – 2013-09-04 03:25:02
@theKing说这是一个用户,而不是一个主持人 - 但你有没有注意到这个职位是三岁以上? – 2013-09-10 08:20:19