public void SetItemCount(int itemCount) { if (itemCount > 0 && itemCount != StatisticsManage.Count) { StatisticsManage = new StatisticsManage(itemCount); } }
private HandleResult OnReceive(HPSocketCS.TcpClient sender, IntPtr pData, int length) { try { //获取消息 if (length == 0) { this.Dispose(); return(HandleResult.Error); } byte[] data = new byte[length]; Marshal.Copy(pData, data, 0, length); recbuffer.Add(data); StatisticsManage.AddReceiveBytes(length); ProcessReceive(); } catch (Exception) { this.Dispose(); return(HandleResult.Error); } return(HandleResult.Ok); }
/// <summary> /// 向管道绑定的另一端发送数据 /// </summary> /// <param name="msg"></param> public virtual void SendData(object msg) { if (Interlocked.CompareExchange(ref _isDisposed, 0, 0) != 0) { return; } var data = PacketCodecHandlerInternal.Encode(msg); StatisticsManage.AddSendMessages(); this.SendData(data); }
/// <summary> /// 触发消息事件 /// </summary> /// <param name="e"></param> internal virtual void OnMessageComing(MessageComingArgs e) { try { if (MessageComing == null) { return; } StatisticsManage.AddReceiveMessages(); MessageComing(this, e); } catch (System.Exception ex) { SystemRunErrorPorvider.CatchException(ex); } }