miwaiwai

导航

03 2023 档案

打印文件名和行号
摘要:打印文件名和行号printf("%s,%d\n",__FILE__,__LINE__); 阅读全文

posted @ 2023-03-31 17:57 米歪歪 阅读(48) 评论(0) 推荐(0) 编辑

c++跨平台库poco
摘要:c++跨平台库poco 阅读全文

posted @ 2023-03-31 06:24 米歪歪 阅读(23) 评论(0) 推荐(0) 编辑

运算符的结合性
摘要: 阅读全文

posted @ 2023-03-29 16:00 米歪歪 阅读(30) 评论(0) 推荐(0) 编辑

linux函数
摘要:1.进程回收 2.信号(异步机制) 3.socket 4.select 5.ipc 6.管道 7.共享内存 8.多进程 9.多线程 10.线程回收 阅读全文

posted @ 2023-03-28 22:35 米歪歪 阅读(15) 评论(0) 推荐(0) 编辑

const在c语言和c++中的区别
摘要:1.c语言中的const变量 c语言中const变量是只读变量,有自己的存储空间 2.c++中的const常量 可能分配存储空也可能不分配存储空间 当const常量为全局,并且需要再其他文件中使用,会分配存储空间 当使用&操作符,取const常量的地址时,会分配存储空间 当const int &a= 阅读全文

posted @ 2023-03-24 21:32 米歪歪 阅读(18) 评论(0) 推荐(0) 编辑

宏定义与卸载
摘要:#define connectionMax 300 定义一个宏#undef connectionMax 卸载一个宏 阅读全文

posted @ 2023-03-24 21:27 米歪歪 阅读(22) 评论(0) 推荐(0) 编辑

信号安装时机
摘要:如果在fork之前安装信号,那么子进程也讲继承这个信号 阅读全文

posted @ 2023-03-24 09:51 米歪歪 阅读(14) 评论(0) 推荐(0) 编辑

信号
摘要:非实时信号不支持排队,都是不可靠信号;实时信号都支持排队,都是可靠信号 阅读全文

posted @ 2023-03-24 08:42 米歪歪 阅读(26) 评论(0) 推荐(0) 编辑

select模型
摘要: 阅读全文

posted @ 2023-03-22 11:24 米歪歪 阅读(11) 评论(0) 推荐(0) 编辑

github的commsock库
摘要:https://github.com/vbirds/Tinyftp 这个github的项目不错,值得学习 阅读全文

posted @ 2023-03-10 16:21 米歪歪 阅读(17) 评论(0) 推荐(0) 编辑

sockutil
摘要://commsocket.h #ifndef __COMMSOCKET__H #define __COMMSOCKET__H #ifdef __cplusplus extern ‘C‘ { #endif #define ERR_EXIT(m) do { perror(m); exit(EXIT_FA 阅读全文

posted @ 2023-03-10 16:17 米歪歪 阅读(23) 评论(0) 推荐(0) 编辑

linux多进程服务框架三
摘要:在使用select管理服务器连接的时候: 注意1:select是可中断睡眠函数,需要屏蔽信号 注意2:必须获取select的返回值nread,每次处理完一个事件,nread需要-1 注意3:如果客户端的连接超过连接池的大小,需要关闭客户端连接 注意4:获取最大套接字的方法是每次有客户端连接过来时,在 阅读全文

posted @ 2023-03-10 16:14 米歪歪 阅读(27) 评论(0) 推荐(0) 编辑

使用select 封装 socket api
摘要:common_socket.h #ifndef __COMMSOCKET_H_ #define __COMMSOCKET_H_ #ifdef __cplusplus extern 'C' { #endif typedef struct _socket_handle { int socketfd; i 阅读全文

posted @ 2023-03-10 16:06 米歪歪 阅读(19) 评论(0) 推荐(0) 编辑

企业财富库read_timeout,write_timeout,accept_timeout,connection_timeout企业财富库:select实现[超时]检测:read_timeout;write_timeout;connect_timeout;accept_timeout
摘要:https://blog.csdn.net/weixin_36750623/article/details/83307973 1.实现read超时检测:read_timeout /** read_timeout-读超时检测函数,不含读操作 (即:判断[从fd套接字]中读数据,是否超时,不真正的读走数 阅读全文

posted @ 2023-03-10 15:20 米歪歪 阅读(33) 评论(0) 推荐(0) 编辑

read超时,write,accept,connect超时函数,设置io阻塞模式
摘要:1.设置I/O为阻塞模式 2.设置I/O为阻塞模式 超时函数: 3.读超时 4.写超时 5.accept_timeout超时函数 主调函数 阅读全文

posted @ 2023-03-10 15:10 米歪歪 阅读(166) 评论(0) 推荐(0) 编辑

服务器开发注意的问题
摘要:1.tcp的11种状态 2.父进程处理并发进程,不能有僵死进程 SIGCHLD信号 while(waitpid(-1,NULL,WNOHANG)>0): 3.SIGPIPE 忽略它 4.close(conn) shutdown()... 5.长连接和短连接 以上是基本功 6.套路 阅读全文

posted @ 2023-03-09 16:32 米歪歪 阅读(10) 评论(0) 推荐(0) 编辑

解决僵死进程
摘要:通过循环解决多个僵死进程: 阅读全文

posted @ 2023-03-08 21:28 米歪歪 阅读(13) 评论(0) 推荐(0) 编辑

英语学习
摘要:1.Doing sth,sb did sth:表示2个动作同时发生 2.sth is totally beyond my expectation/imagination 3. 阅读全文

posted @ 2023-03-08 21:27 米歪歪 阅读(22) 评论(0) 推荐(0) 编辑

获取本地ip和获取对端ip
摘要:获取本地ip: int getsockname(int sockfd, struct sockaddr *addr, socklen_t *addrlen); 获取对端ip: int getpeername(int sockfd, struct sockaddr *addr, socklen_t * 阅读全文

posted @ 2023-03-08 15:42 米歪歪 阅读(101) 评论(0) 推荐(0) 编辑

readline函数
摘要:偷窥函数 阅读全文

posted @ 2023-03-07 21:10 米歪歪 阅读(23) 评论(0) 推荐(0) 编辑

读取socket的recv()函数
摘要:ssize_t recv(int sockfd, void *buf, size_t len, int flags); flags=MSG_PEEK表示偷窥缓存区 偷窥数据的例子 阅读全文

posted @ 2023-03-07 21:01 米歪歪 阅读(18) 评论(0) 推荐(0) 编辑

tcp流的边界处理
摘要:1.末尾加\r\n 2.自定义报文 例如:报文头报文体 4个字节:报文体 阅读全文

posted @ 2023-03-07 18:39 米歪歪 阅读(25) 评论(0) 推荐(0) 编辑

父进程等待子进程退出
摘要: 阅读全文

posted @ 2023-03-04 22:21 米歪歪 阅读(15) 评论(0) 推荐(0) 编辑

TCP/IP协议的11种状态
摘要:谁先关闭,谁先进入time_wait状态,后关闭的进入closed状态 如果同时关闭,那么同时进入time_wait状态 fin_wait_2是半连接状态 服务器端突然关闭,操作系统会向对端发送一个sigpipe的信号,如果客户端不处理,那么客户端程序会挂掉的 1.当对等方socket关闭,会给客户 阅读全文

posted @ 2023-03-04 20:51 米歪歪 阅读(20) 评论(0) 推荐(0) 编辑

地址复用api
摘要:地址复用api 阅读全文

posted @ 2023-03-04 12:00 米歪歪 阅读(8) 评论(0) 推荐(0) 编辑

文档获取
摘要: 阅读全文

posted @ 2023-03-04 08:50 米歪歪 阅读(15) 评论(0) 推荐(0) 编辑

字节序转换函数
摘要: 阅读全文

posted @ 2023-03-04 07:45 米歪歪 阅读(14) 评论(0) 推荐(0) 编辑

ip地址转换函数
摘要:常用的是: int inet_aton(const char *cp, struct in_addr *inp); in_addr_t inet_addr(const char *cp); char *inet_ntoa(struct in_addr in); 阅读全文

posted @ 2023-03-03 22:18 米歪歪 阅读(19) 评论(0) 推荐(0) 编辑