导航

2021年5月24日 #

epoll + signalfd使用过程遇到的问题

摘要: 当前,signalfd注册有SIGCHLD 当处理完一个SIGCHLD信号后,epoll持续有signalfd的读事件,但去读fd的时候,读不出东西。 未解决。 读的时候,确认errno为 #define EINVAL 22 /* Invalid argument */ 信号结构体大小128,我传参 阅读全文

posted @ 2021-05-24 15:43 toughcactus 阅读(117) 评论(0) 推荐(0) 编辑

vfprintf的使用

摘要: 今天实现日志模块的时候,打印了但是cat不出东西。 vfprintf(fp, format, args); fflush(fp); 原因是写入fp的内容会先写入缓冲,如fclose操作会将缓冲的东西写入文件,但如果想实时写入,需调用fflush。 另外使用宏__FUNCTION__作为参数的时候,参 阅读全文

posted @ 2021-05-24 15:41 toughcactus 阅读(190) 评论(0) 推荐(0) 编辑

关于sockfd设置非阻塞模式

摘要: 今早测试的时候,发现改完的代码,socket出现EPOLLHUP | EPOLLERR 然后connect的时候返回值为-1,errno为 #define EINPROGRESS 115 /* Operation now in progress */ 这是正常的,因为connect设置的是不阻塞直接 阅读全文

posted @ 2021-05-24 09:14 toughcactus 阅读(87) 评论(0) 推荐(0) 编辑