RT.小弟最近研究iocp,在使用WSASend异步投递时,需要关联一个Overlapped结构,现在的做法是每次都new一个,然后在收到完成通知时delete,感觉效率低。我看网上的做法,一种是采用线性来发送数据,即第一次WSASend完成后才投递第二个,这样就共用一个overlapped结构;第二种是用内存池(对象池),但是也有人表示要实际测试,很多人自己写的内存池还不如标准库的内存分配高效;请问该如何选择呢?有没有实际测试过的方案?
------解决思路----------------------
即第一次WSASend完成后才投递第二个,这样就共用一个overlapped结构;第二种是用内存池(对象池)
两个措施一起用
------解决思路----------------------
如果你每次投递的数据大小是固定的,用内存池比较好。
------解决思路----------------------
内存池可以参考 jemalloc