Chinaunix

标题: 如何让每个线程有一个属于自己的timer [打印本页]

作者: winnercoming    时间: 2013-05-16 13:28
标题: 如何让每个线程有一个属于自己的timer
单线程很容易用alarm或者 settimer来实现时钟。

那么多线程呢?如何实现呢?多谢!!!
作者: linux_c_py_php    时间: 2013-05-16 16:28
信号这种不可靠的东西, 还是别拿来做定时器了, 考虑自己实现应用级别的定时器吧.
作者: zylthinking    时间: 2013-05-16 17:53
create_timer + CLOCK_THREAD_CPUTIME_ID ?
作者: zylthinking    时间: 2013-05-16 17:56
zylthinking 发表于 2013-05-16 17:53
create_timer + CLOCK_THREAD_CPUTIME_ID ?


貌似不行
作者: shanehan    时间: 2013-05-16 19:15
timerfd + epoll 或 利用epoll_wait()的超时时间 做单位定时器,然后用timing wheel或最小堆实现 如何?
作者: younghuster    时间: 2013-05-16 22:50
创建个定时器管理线程,其它线程创建定时器,定时器管理线程计时,超时后,就通知相应的线程。
作者: yulihua49    时间: 2013-05-18 15:49
winnercoming 发表于 2013-05-16 13:28
单线程很容易用alarm或者 settimer来实现时钟。

那么多线程呢?如何实现呢?多谢!!!

用select或epoll。
作者: homerzhou    时间: 2013-05-20 20:51
应该是不太能用 硬件时钟的,想上面说的只能用应用层级别的,




欢迎光临 Chinaunix (http://bbs.chinaunix.net/) Powered by Discuz! X3.2