摘要: 在Qt creater中添加类后,IDE中可以正常include,没有提示报错,编译时报错,无法解析的外部符号。 解决办法: 删除build文件夹,重新编译 P.S. 这bug来的猝不及防 阅读全文
posted @ 2023-03-17 09:13 wa小怪兽 阅读(79) 评论(0) 推荐(0) 编辑
摘要: 管道 管道是由内核管理的一个缓冲区。管道的一端连接一个进程的输出。这个进程会向管道中放入信息。管道的另一端连接一个进程的输入,这个进程取出被放入管道的信息。一个缓冲区不需要很大,它被设计成为环形的数据结构,以便管道可以被循环利用。当管道中没有信息的话,从管道中读取的进程会等待,直到另一端的进程放入信 阅读全文
posted @ 2022-03-17 01:33 wa小怪兽 阅读(145) 评论(0) 推荐(0) 编辑
摘要: iptables iptables & netfilter iptables是与 Linux 内核集成的 IP 信息包过滤系统。如果 Linux 系统连接到因特网或 LAN、服务器或连接 LAN 和因特网的代理服务器, 则该系统有利于在 Linux 系统上更好地控制 IP 信息包过滤和防火墙配置。 netfilter 阅读全文
posted @ 2022-03-17 01:18 wa小怪兽 阅读(181) 评论(0) 推荐(0) 编辑
摘要: openvSwitch概述 openvSwitch是一种开源的虚拟交换机,基于overlay网络设计思想和openflow模式实现。 openflow是一种网络通信协议,能控制网络上的路由器和交换机的数据平面,改变网络数据包的处理流程(pipeline)。 openflow通过多个table串行工作的方式来处理网路数据包,以此 阅读全文
posted @ 2022-03-09 01:18 wa小怪兽 阅读(523) 评论(0) 推荐(0) 编辑
摘要: return:在程序函数中返回某个值,返回之后函数不在继续执行,彻底结束。 yield: 带有yield的函数是一个迭代器,函数返回某个值时,会停留在某个位置,返回函数值后,会在前面停留的位置继续执行,直到程序结束。 如下: def iter(): for i in range(3): yield 阅读全文
posted @ 2022-03-09 00:57 wa小怪兽 阅读(22) 评论(0) 推荐(0) 编辑
摘要: python中的*args和**kwargs用作函数声明参数可以支持可变长参数列表: *args将函数的变长参数保存至tuple中(只保存参数的值)。 而**kwargs将函数变长参数的参数名和值分别以key和value的形式保存至dict中。 调用函数时,使用*args和**kwargs可以起到解 阅读全文
posted @ 2021-08-19 14:46 wa小怪兽 阅读(58) 评论(0) 推荐(0) 编辑
摘要: route命令可以查看系统的路由表。 1 $ route 2 内核 IP 路由表 3 目标 网关 子网掩码 标志 跃点 引用 使用 接口 4 default Hiwifi.lan 0.0.0.0 UG 600 0 0 wlp2s0 5 link-local 0.0.0.0 255.255.0.0 U 阅读全文
posted @ 2021-07-21 22:51 wa小怪兽 阅读(1068) 评论(0) 推荐(0) 编辑
摘要: 使用mmap映射内存需要对文件有读权限。 打开文件时,需要使用O_RDWR标志,不能以只写模式打开文件。 阅读全文
posted @ 2021-04-22 01:02 wa小怪兽 阅读(649) 评论(0) 推荐(0) 编辑
摘要: nginx中accept锁主要是为了防止一个新连接的accept事件导致多个进程被唤醒的问题发生。 nginx中的进程只有抢占到accept锁时才会将监听的fd放入epoll中,这样同一时间只有一个进程可以接受新连接的accept事件。工作进程抢占到accept锁后,将监听端口的fd放入epoll中 阅读全文
posted @ 2021-04-19 18:34 wa小怪兽 阅读(343) 评论(0) 推荐(0) 编辑
摘要: 在状态图中可以看到,一端主动发送FIN,也就是主动关闭时,经历FIN_WAIT_1和FIN_WAIT_2状态后会进入TIME_WAIT状态,等待2MSL后才会彻底释放连接四元组。 当一个高并发系统处理大量短连接服务时,每次处理短链接服务结束后主动关闭连接,会产生大量socket处于TIME_WAIT 阅读全文
posted @ 2021-03-11 13:46 wa小怪兽 阅读(302) 评论(0) 推荐(0) 编辑