libuv文件服务器,libuv_UDP服务器搭建

libuv_UDP服务器搭建

libuv_UDP服务器搭建

设计概述

http://docs.libuv.org/en/v1.x/design.html

1de0bf47a379e0ea292bfdd0f0e53922.png

9d1842bcf4efb1a73e332adbb0e47c48.png

63ed8a5e31aefd6b166bf58392bcd6da.png

服务器绑定端口

1: 初始化服务器 udp handle: uv_udp_init(event_loop, &udp_server);

2:配置绑定IP与端口:

struct sockaddr_in addr;

uv_ip4_addr(“0.0.0.0”, 6080, &addr);

uv_udp_bind(&udp_server, (const struct sockaddr*)&addr, 0);

3:告诉event loop,管理数据:

uv_udp_recv_start(&udp_server, uv_alloc_buf, uv_udp_recv_data);

4:告诉event loop, 不要管理这个 handle的 读数据事件: uv_udp_recv_stop

0b29baa8f2f442a54815df8496ed8de4.png

5e9ba974e9988bc7d535c0cb52ec247a.png

1d269db1221de9298612bfba2376d864.png

获取地址

1:ipv4为例:

ip + 端口与 struct sockaddr_in addr转换;

uv_ip4_addr(“0.0.0.0”, 6080, &addr)

struct sockaddr addr –> ip + 端口转换;

uv_ip4_name(addr, buf, buf_size): 获取ip地址;

ntohs(((struct sockaddr_in*)addr)->sin_port)

发送数据

:uv_udp_send: 发送数据;

56bd9805dc92f8658d4094fbb865ded4.png

9cf0c31b0b55610f1fb010aac02ed540.png

Server

chient

libuv_UDP服务器搭建相关教程

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值