// 获得发送缓冲区管理器 public SendDataBufferMgr MallocSendBufferMgr() { SendDataBufferMgr sendDataBufMgr = null; if (sendDataBufMgrList.Count() > 0) { sendDataBufMgr = sendDataBufMgrList[0]; sendDataBufMgrList.RemoveAt(0); } if (sendDataBufMgr == null) { sendDataBufMgr = new SendDataBufferMgr(); if (sendDataBufMgr == null) { return(null); } // 初始化 BufferMgr if (!sendDataBufMgr.Init()) { sendDataBufMgr = null; return(null); } } return(sendDataBufMgr); }
// 释放发送缓冲区管理器 public void FreeSendBufferMgr(SendDataBufferMgr sendDataBufMgr) { if (sendDataBufMgr == null) { Trace.Assert(false, "sendDataBufMgr is null"); return; } if (sendDataBufMgrList.Count() >= reservedSize) { sendDataBufMgr.Release(); sendDataBufMgr = null; } else { sendDataBufMgr.Reset(); sendDataBufMgrList.Add(sendDataBufMgr); } }