标题: [疑问] timer 函数在那个线程中执行
longskys
LU新生
Rank: 1


UID 49056
精华 0
积分 5
帖子 9
活跃指数 2
LU金币 11 个
LU金条 0 个
阅读权限 10
注册 2006-6-18
 
发表于 2006-6-27 16:27  资料  个人空间  短消息  加为好友  添加 longskys 为MSN好友 通过MSN和 longskys 交谈 QQ
timer 函数在那个线程中执行

在多线程环境下,如果说其中一个线程中设置了timer, 当这个timer expirate 的时候,

1. 那个在timer中注册的callback函数是被谁调用执行的 ?

2. 是在那个线程中执行? 是重新建立线程执行吗 ?

3. 如果是中断设置这个timer的线程来执行timer 函数,那么如果设置它的线程已经结束了,那么这个timer函数怎么执行 ? 能不能执行,会不会出问题?

setitimer是对线程来设置的还是对进程设置的,一共有三种timer(ITIMER_REAL,ITIMER_VIRTUAL,ITIMER_PROF),对每种timer,一个进程可以设置几个timer






[ 本帖最后由 longskys 于 2006-6-28 01:53 编辑 ]

顶部
jxppp
LU幼天使
Rank: 2


LU爱心使者  
UID 21356
精华 0
积分 154
帖子 297
活跃指数 3
LU金币 53 个
LU金条 5441 个
阅读权限 20
注册 2004-5-21
 
发表于 2006-7-13 13:52  资料  个人空间  短消息  加为好友 
timer --> signal --> 一班会由进程来接管.
除非是posix里面的线程信号,会由进程接管,在自动的Push倒对应的线程...
好像是这个样子的.

顶部
 



当前时区 GMT+8, 现在时间是 2008-12-3 05:39
乐悠LoveUnix论坛-京ICP备05005823号

Thanks to Discuz!  © 2001-2007    Power by LoveUnix.net
Processed in 0.052777 second(s), 6 queries , Gzip enabled

清除 Cookies - 联系我们 - 乐悠LoveUnix - Archiver