Ejemplo n.º 1
0
        /// <summary>
        /// 及时器启动发送心跳的方法
        /// </summary>
        /// <param name="source"></param>
        /// <param name="e"></param>
        private void sendHeartHit(object source, System.Timers.ElapsedEventArgs e)
        {
            try
            {
                if (marketTcpClient != null)
                {
                    NetInfo info = new NetInfo();
                    info.code = CommandCode.HEARTBIT;
                    marketTcpClient.sendData(info.MyToString());
                }

                if (marketTcpClient.client.State == HPSocketCS.ServiceState.Stoped)
                {
                    marketTcpClient.ReConnect();
                }
                if (e.SignalTime.Minute == 0)
                {
                    /// AskMarket();
                    marketErrorLoger.close();
                    marketErrorLoger = new WriteLog("./log/marketError.log", LogLevel.ALL);
                }
            }
            catch
            {
            }
            finally
            {
                HeartTimer.Start();
            }
        }
Ejemplo n.º 2
0
 /// <summary>
 /// 执行重连线程
 /// </summary>
 public void ExecuteReconnectThread()
 {
     while (isSave)
     {
         try
         {
             MarketTcpIp marketTcpIp = marketTcpIpBlockingCollection.Take();
             // if (!marketTcpIp.client.isConnected){
             if (!marketTcpIp.isOnReconnecting)
             {
                 Thread.Sleep(1000);
                 PrintToTxt("正在重连...");
                 marketTcpIp.ReConnect();
             }
         }
         catch (Exception ex)
         {
             marketErrorLoger.log(LogLevel.SYSTEMERROR, ex.ToString());
         }
     }
 }