2008年11月14日socket缓冲区:C#实现的可复用Socket接收/发送共享缓冲区
在Socket的接收/发送方法:Send()、BeginSend()、Receive()、BeginReceive()中,第一个参数是字节数数组,表示当前接收数据区或需要发送的数据。普通Socket应用中,往往是接收/发送时创建数组,使用后该数组空间由托管堆回收。显然,频繁接收/发送将在托管堆上创建很多的内存碎块,影响系统性能。 使用Socket异步调事件参数类SocketAsyncEventArgs时考虑了上述情况,基本构思为:自定义一个缓冲区管理类如BufferManager,开辟一个大的、可重用接收/发送收缓冲区,用于SendAsync()、Receive...
[阅读全文] [PDF]
1 共1条 分1页