采纳答案成功!
向帮助你的同学说点啥吧!感谢那些助人为乐的人
老师,在项目中IoArgs的作用主要是在packet和真实发送接收之间做缓冲的吗,比较好奇为什么需要这种缓冲,它对于实际发送会有什么样的好处?
IoArgs 可以算是我们分层结构中的一个必要产物,目的在于将数据分成更小的可管理的单元再进行发送;当然咱们课程的IoArgs并非最好的方案,最优的方案也应该存在IoArgs的类,但内部应该仅仅存储状态+数据偏移位来做到对数据的管理;尽可能少的对数据进行多次copy操作;当然课程本身简化了这里的工作量。
Frame\IoArgs\Packet
几个类组成了整个传输的不同层次,而不同层之间存在不同的调度,消费方式,所以如果仅仅传递一个Packet到全局,这势必会让Packet内部增加非常多的状态变量来维持不同层的运转,但这必然会让代码变得臃肿不可维护;从代码设计来说应当尽量避免这样的情况。
以上是一些我当初设计时的想法,希望能为你解惑
登录后可查看更多问答,登录/注册
理论+实践,系统且深入掌握Socket核心技术,从容应对各种Socket应用场景的不二之选
2.8k 1
1.8k 7
1.7k 5
1.9k 13
1.1k 13