libuv
文章平均质量分 67
hubei_dxx
这个作者很懒,什么都没留下…
展开
-
linux-arm编译报错m4: unrecognized option ‘--gnu‘
linux-arm编译libuv第一步执行./autogen.sh报错,网上说的是autoconf和automake没有安装。结论:m4版本比较老,不支持某些新的特性导致执行./autogen.sh报错,更新到1.4.19版本重新执行成功m4: unrecognized option ‘–gnu’Try `m4 --help’ for more information.autom4te: m4 failed with exit status: 1aclocal: error: echo fail原创 2021-06-21 11:28:54 · 804 阅读 · 0 评论 -
libuv实现ping包发送和接收
目录简介源码简介使用socket函数创建套接字,并与uv_udp_t关联,可以实现对icmp包的发送和接收,实现类似ping命令的功能 uv_loop_t* loop = uv_default_loop(); uv_udp_t* pUdp = new uv_udp_t; int sock = socket(AF_INET, SOCK_RAW, IPPROTO_ICMP); uv_udp_init(loop, pUdp); uv_udp_open(pUdp, sock);源码学原创 2021-06-16 09:40:51 · 617 阅读 · 0 评论 -
libuv使用不当导致的内存泄漏
libuv库使用过程中,发现简单的定时器不关闭对应的句柄会导致内存泄漏;使用文章后面的测试代码缺少uv_close或者uv_loop_close均会导致内存泄漏,关闭的时机也有影响。Detected memory leaks!Dumping objects ->{185} normal block at 0x00FB7860, 32 bytes long.Data: < R z > E8 52 E8 7A 00 00 00 00 00 00 00 00 00原创 2021-06-15 17:38:12 · 853 阅读 · 0 评论 -
libuv实现tcp代理服务器
目录概述API简介uv_err_nameuv_ip4_addruv_tcp_inituv_tcp_binduv_listenuv_accept源码演示概述为了学习libuv的tcp相关函数使用,实现了一个tcp代理服务。1 启动TCP服务2 如果有新的连接X,则向代理地址建立连接Y,并关联X和Y成组3 如果X收到数据包,发往Y;反之如果Y收到数据包发往X4 如果X或者Y连接异常,关闭此组连接5 代理服务退出时,清理所有组,清理TCP服务API简介uv_err_name出现错误可以通过原创 2021-06-15 09:02:26 · 702 阅读 · 0 评论 -
libuv在Windows下环境搭建和演示 - 定时器
目录简述新建项目代码编写编译运行简述之前介绍了libuv库在Windows环境下的编译https://blog.csdn.net/hubei_dxx/article/details/117768529现在我们把编译的库用起来,使用工具VS2010新建项目在解决方案新建项目,选择win32控制台应用程序,名称这里用uv_timer,然后点击确定。把该项目右键设置为启动项。代码编写设置一个定时器,3秒后启动,之后每秒执行,执行5次后停止#include "uv.h"unsigned int原创 2021-06-10 15:21:00 · 590 阅读 · 0 评论