1、alarm
只发出一种信号给自己
2、setitimer
可以发出3种信号给自己,
3、timerfd
这个接口基于文件描述符,通过文件描述符类似epoll那种的可读事件进行超时通知,能够被用于select/epoll/poll的应用场景,linux内核2.6.25版本及以上版本使用
4、利用服务器while(true) epoll_wait等短暂阻塞,无限循环,来检查event队列,超时就执行,来实现定时效果
另外有一点 epoll_wait 会被SIGALRM中断,返回EINTR错误
时间: 2024-10-11 17:11:46