标签: c linux asynchronous timer
想象的场景:
有一个基于事件循环(epoll)的processA,它有时会通过网络将请求发送到另一个在不同计算机上运行的进程B. ProcessA异步启动一个计时器并等待10秒,然后放弃等待来自processB的响应。如果processB的响应在10秒内到达,则计时器将停止。
问题是如何在Linux系统上用C实现这个异步计时器?
答案 0 :(得分:0)
在文件描述符上使用select(http://linux.die.net/man/2/select)来读取响应。此系统调用使一个人能够超时