小编Dan*_*lla的帖子

零拷贝接收和消息大小

当使用零拷贝接收时,有没有办法查询收到的消息的大小?

有了这个我(尝试)实现零拷贝:

zmq_recv(sock, buf, sizeof(buf), 0);
Run Code Online (Sandbox Code Playgroud)

我也尝试过:

zmq_msg_t msg;
zmq_msg_init_data (&msg, buf, sizeof(buf), nullptr, NULL);
zmq_msg_recv(&msg, sock, 0);
size_t len = zmq_msg_size(&msg);
Run Code Online (Sandbox Code Playgroud)

这将返回正确的大小,但不会填充buf.我认为zmq_msg_init_data不打算与zmq_msg_recv接收时使用和重建消息.

zeromq

3
推荐指数
1
解决办法
1140
查看次数

标签 统计

zeromq ×1