void MessageHandleAsync_Completed(MessageData respData, Exception ex)
        {
            if (ex != null)
            {
                //CommonHelper.AddEventLog(EventSourceName, ex.Message);
                //RecordDB(ex.Message, respData);
                return;
            }
            if (respData == null)
            {
                //CommonHelper.AddEventLog(EventSourceName, "返回数据为空!");
                return;
            }

            byte[] rebytes = respData.GetRespMessage();

            // 发送个MQ(MessageID, buffer)
            MQMessage msg = GetMessage(respData.BizMsgID, respData.MessageID, respData.TragetPlatform, respData.IsMultiPackage);
            int realLen = rebytes.Length;
            if (respData.TragetPlatform != PlatformType.Encrypt)
            {
                byte end = 0;
                realLen = Array.IndexOf(rebytes, end);
            }

            byte[] buffer = new byte[realLen];
            Array.Copy(rebytes, buffer, realLen);
            msg.Byte = buffer;
            _mqSender.SendMessage(msg);
        }
        void MessageHandleAsync_Completed(MessageData respData, Exception ex)
        {
            
            if (respData == null)
            {
                //CommonHelper.AddEventLog(EventSourceName, "返回数据为空!");
                return;
            }
            if (ex != null)
            {
                //CommonHelper.AddEventLog(EventSourceName, ex.Message);
                RecordDB(ex.Message, respData);
                MQMessage exmq = GetMessage(respData.BizMsgID, respData.MessageID, respData.TragetPlatform, !respData.IsMultiPackage, respData.SourceIP, ex.Message);
                
                return;
            }
            byte[] rebytes = respData.GetRespMessage();

            // 发送个MQ(MessageID, buffer)
            MQMessage msg = GetMessage(respData.BizMsgID, respData.MessageID, respData.TragetPlatform, !respData.IsMultiPackage, respData.SourceIP, "");
            int realLen = rebytes.Length;
            if (respData.TragetPlatform != PlatformType.Encrypt)
            {
                byte end = 0;
                realLen = Array.IndexOf(rebytes, end);
            }

            byte[] buffer = new byte[realLen];
            Array.Copy(rebytes, buffer, realLen);
            msg.Byte = buffer;
            lock (typeof(MQHandlerSync))
            {
                _mqSender.SendMessage(msg);
            }
            AidLogHelper.Write(xQuant.Log4.LogLevel.Debug, "socket处理完,MQ发回消息(MQHandlerSync)");
        }
        void MessageHandleAsync_Completed(MessageData data, Exception ex)
        {
            Interlocked.Decrement(ref _dataCount);
            if (_isConCurrentTesting)
            {
                //String eventSourceName = "xQuant.ConCurrentTesting";
                //StringBuilder sb = new StringBuilder();
                //sb.AppendFormat("Req:{0};    Begin:{1}    Type:{2}", data.MessageID, data.Begin.ToString("HH:mm:ss:fff"), respData.GetType().ToString());
                //sb.AppendLine();
                //sb.AppendFormat("Resp:{0};    End:{1}, Remain:{2}", data.RespMsgID, DateTime.Now.ToString("HH:mm:ss:fff"), _dataCount);
                //CommonHelper.AddEventLog(eventSourceName, sb.ToString());
                if (_dataCount <= 0)
                {
                    TimeSpan span = new TimeSpan(DateTime.Now.Ticks - _begin);
                    MessageBox.Show("Finish! Duration:" + span.TotalMilliseconds.ToString());
                }

                return;
            }

            StringBuilder result = new StringBuilder();
            if (ex != null)
            {
                return;
            }
            if (data == null)
            { }
            byte[] rebytes = data.GetRespMessage();

            // 发送个MQ(MessageID, buffer)

            // 跳过MQ
            // ....

            // web界面层
            int realLen = rebytes.Length;
            if (data.TragetPlatform != PlatformType.Encrypt)
            {
                byte end = 0;
                realLen = Array.IndexOf(rebytes, end);
            }

            byte[] buffer = new byte[realLen];
            Array.Copy(rebytes, buffer, realLen);
            BizMsgDataBase respData = null;

            respData = MsgTransfer.DecodeMsg(data.MessageID, buffer);

            
            #region Test code

            if (respData is RetrieveCstmData)
            {
                TestForRetrieveCstm(result, (CoreBizMsgDataBase)respData);
                result.AppendLine();
                if (_dataCount <= 0)
                {
                    long end = DateTime.Now.Ticks;
                    TimeSpan span = new TimeSpan(end - _begin);

                    MessageBox.Show(span.TotalMilliseconds.ToString());
                }
                //textBoxRetCstmResult.Text += result.ToString();

            }
            else if (respData is RetrieveCstmBaseInfoData)
            {
                TestRetrieveCstmBaseInfo(result, respData);
                textBoxRetCstmResult.Text = result.ToString();
            }
            else if (respData is UpdateCstmData)
            {
                TestForUpdateCstm(result, (CoreBizMsgDataBase)respData);
                result.AppendLine();
                if (_dataCount <= 0)
                {
                    long end = DateTime.Now.Ticks;
                    TimeSpan span = new TimeSpan(end - _begin);

                    MessageBox.Show(span.TotalMilliseconds.ToString());
                }
                //textBoxRespUpdtCstm.Text +=  result.ToString();
            }
            else if (respData is AddCstmData)
            {
                TestForAddCstm(result, (CoreBizMsgDataBase)respData);
                textBoxRespUpdtCstm.Text = result.ToString();
            }
            else if (respData is AcctRecordData)
            {
                //TestForAcctRecord(result, (CoreBizMsgDataBase)respData);
                //textBoxRespAcct.Text = result.ToString();
            }
            else if (respData is EncryptTellerAuth)
            {
                EncryptTellerAuth encryptTeller = respData as EncryptTellerAuth;
                if (encryptTeller.AfterEncrypt)
                {
                    TestForLogin(result, encryptTeller);
                    textBoxEncryptOutput.Text = result.ToString();
                    //if (DialogResult.OK == MessageBox.Show(_dataCount.ToString(), "Test", MessageBoxButtons.OK))
                    {

                        if (_dataCount <= 0)
                        {
                            long end = DateTime.Now.Ticks;
                            TimeSpan span = new TimeSpan(end - _begin);

                            MessageBox.Show(span.TotalMilliseconds.ToString());
                        }
                    }

                }
                else
                {
                    TellerLogin2((EncryptTellerAuth)respData);
                }
            }

            #endregion
        }