修改TEST_UDP_PROACTOR不能连续接受客户数据的问题
2008-11-14 23:44
435 查看
在Receiver::handle_read_dgram函数的最后,增加下面的代码:
ACE_Message_Block* msg = new ACE_Message_Block (1024);
// create a message block to read the message body
ACE_Message_Block* body =new ACE_Message_Block (1024);
msg->cont (body);
// ok lets do the asynch
read
size_t number_of_bytes_recvd = 1024;
int
res = rd_.recv (msg,
number_of_bytes_recvd,
0,
PF_INET,
this->act_);
也就是增加rd_.recv的调用,继续数据的接受,同时也不用担心这里的new没有显式的delete,因为
result.message_block
()->release ()已经将那块内存区域释放了;事实上测试数据表明,也没有明显的
内存泄露
ACE_Message_Block* msg = new ACE_Message_Block (1024);
// create a message block to read the message body
ACE_Message_Block* body =new ACE_Message_Block (1024);
msg->cont (body);
// ok lets do the asynch
read
size_t number_of_bytes_recvd = 1024;
int
res = rd_.recv (msg,
number_of_bytes_recvd,
0,
PF_INET,
this->act_);
也就是增加rd_.recv的调用,继续数据的接受,同时也不用担心这里的new没有显式的delete,因为
result.message_block
()->release ()已经将那块内存区域释放了;事实上测试数据表明,也没有明显的
内存泄露
相关文章推荐
- UDP通讯中数据不能写入文件的问题
- 不能修改/删除/添加数据.(NTFS问题)
- Oracle数据图形画界面不能修改日期和数据问题
- 针对TQ部分ARM开发板中QTCPServer不能接受数据的问题
- 使用SSH框架,只能查询数据,不能修改和保存数据的问题
- hibernate 一对一、多对一 双向关联的问题——只能在多的一方添加、修改数据,不能在多的一方修改添加
- Mediacodec编码UDP传输,接收到数据不能解码显示的问题
- 针对USB_cam数据发送不给ORBSLAM2的问题解决方案是修改usb_cam-test.launch文件
- 关于使用Ajax传中文数据到后台接受乱码问题 data:{"dictype":"客户信誉度"}
- 修改初始化参数不合理导致数据不能启动问题解决
- WPF线程中被修改后DataGrid数据不能及时更新的问题
- C#中DataGridView绑定了DataTable后,通过代码修改DataGridView中的数据,总有一行(被修改过并被用户选中的行集合中索引为0的行)不能被UpDate回数据库的问题和解决办法
- gridview不能删除修改数据的问题
- 报表解决Excel导入数据不能根据显示值将实际值存入数据库的问题
- MTK 解决蓝牙串口MMI不能收发数据的问题
- 解决修改MySQL的数据库存放路径后不能重启的问题
- 解决Outlook邮件规则不能修改,删除的问题
- C#用UDP同步发送数据和接受数据
- microhttpd使用的代码,接受客户客户端post的数据,然后在响应
- 微信开发之历史上的今天(JSOUP 解析) 修改更新之后不能用的问题