private void MainSaveRecordThread() { CommonVariables.LogTool.Log("begin buffer contorl"); //savedIntoDataBase = DateTime.Now.ToString(CommonFlag.F_DateTimeFormat); try { while (IsRunning) { if (GetUsingMsgRecordBuffer.Count > 0) { UsingTagForMsgRecord = !UsingTagForMsgRecord; msgRecordService.BatchSave(GetUnUsingMsgRecordBuffer); //savedIntoDataBase = GetUnUsingBufferContainer.Select(t => t.SendTime).Max(); GetUnUsingMsgRecordBuffer.Clear(); } Thread.Sleep(100); } } catch (Exception ex) { CommonVariables.LogTool.Log(ex.Message + ex.StackTrace); } }
public void StopMainThread() { IsRunning = false; if (GetUsingMsgRecordBuffer.Count > 0) { msgRecordService.BatchSave(GetUsingMsgRecordBuffer); GetUsingMsgRecordBuffer.Clear(); } if (GetUnUsingMsgRecordBuffer.Count > 0) { msgRecordService.BatchSave(GetUnUsingMsgRecordBuffer); GetUnUsingMsgRecordBuffer.Clear(); } }
private void MainSendMSGThread() { sendMsgClient = new AsyncSocketClient(_maxSize, _maxSendConnections, CommonVariables.LogTool); try { while (IsRunning) { if (GetUsingMsgRecordBuffer.Count > 0) { UsingTagForMsgRecord = !UsingTagForMsgRecord; while (GetUnUsingMsgRecordBuffer.Count > 0) { MsgRecordModel msgRecordModel = GetUnUsingMsgRecordBuffer[0]; try { string messageStr = CommonFlag.F_MDSVerifyMCSMSG + CommonVariables.serializer.Serialize(msgRecordModel); //CommonVariables.LogTool.Log("begin send mds " + msgRecordModel.MDS_IP + " port:" + msgRecordModel.MDS_Port + messageStr); sendMsgClient.SendMsg(msgRecordModel.MDS_IP, msgRecordModel.MDS_Port, messageStr, msgRecordModel.MsgID, HandlerMsgReturnData); ExeingMsgRecordModels.Add(msgRecordModel); } catch (Exception ex) { GetUsingMsgRecordBuffer.Add(msgRecordModel); CommonVariables.LogTool.Log(msgRecordModel.MsgID + ex.Message + ex.StackTrace); } GetUnUsingMsgRecordBuffer.RemoveAt(0); } } Thread.Sleep(_sendDelay); } } catch (Exception ex) { CommonVariables.LogTool.Log(ex.Message + ex.StackTrace); } }