Websphere MQ 7.0.1 c# XMS连接导致10054 (X'2746') tcp错误
本文关键字:2746 错误 tcp 10054 MQ 连接 XMS Websphere | 更新日期: 2023-09-27 18:10:59
我有一个简单的程序连接到一个远程队列管理器,它似乎工作得很好,我可以发送和接收消息。但是我注意到,每次连接我都在windows应用程序事件管理器中得到错误:
从主机myhost(12.213.143.252)接收错误。
从主机(12.213.143.252)接收数据时发生错误TCP/IP。这可能是由于通信故障。
TCP/IP recv()调用的返回码是10054 (X'2746')。记录这些值并告诉系统管理员。
我认为这可能是我没有在客户端正确断开连接,虽然我不确定我做错了什么。下面是我用来测试连接的代码,它仍然会导致这个问题:
XMSFactoryFactory factoryFactory = XMSFactoryFactory.GetInstance(XMSC.CT_WMQ);
IConnectionFactory cf = factoryFactory.CreateConnectionFactory();
cf.SetStringProperty(XMSC.WMQ_QUEUE_MANAGER, WebSphereConfigObject.QueueManager);
cf.SetStringProperty(XMSC.WMQ_HOST_NAME, WebSphereConfigObject.Host);
cf.SetIntProperty(XMSC.WMQ_PORT, WebSphereConfigObject.Port);
cf.SetStringProperty(XMSC.WMQ_CHANNEL, WebSphereConfigObject.ServerConnectionChannel);
cf.SetIntProperty(XMSC.WMQ_CONNECTION_MODE, XMSC.WMQ_CM_CLIENT);
IConnection connection = cf.CreateConnection();
ISession session = connection.CreateSession(false, AcknowledgeMode.AutoAcknowledge);
connection.Start();
session.Close();
connection.Stop();
connection.Close();
任何帮助,非常感谢!
从我所看到的来看,事件10054是由队列管理器进程amqrmppa记录的。当此队列管理器进程和XMS客户机应用程序之间的套接字连接突然终止时,将记录该事件。
正常终止不记录任何事件
尽量不要同时使用。close call !!
。[1]: http://www - 01. - ibm.com/support/docview.wss?uid=swg27024064
正确关闭和断开连接编写应用程序代码以正确关闭或处置不再使用的XMS对象。如果不这样做,特别是IConnection或issession实例,可能会限制到队列管理器的连接数量。