LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 1362|回复: 4

sleep函数

[复制链接]
发表于 2005-11-10 14:54:33 | 显示全部楼层 |阅读模式
linux的sleep函数是不是线程相关的,而不是进程相关的。
我看到文章说线程延时要用pthread_delay_np,我的pthread库中并没有实现这个函数,我用sleep试了一下,竟然一点也不阻塞。谁解释一下!
发表于 2005-11-10 17:36:54 | 显示全部楼层
sleep()在线程里立刻返回???
不可能吧。
usleep()呢??
回复 支持 反对

使用道具 举报

 楼主| 发表于 2005-11-10 20:59:32 | 显示全部楼层
我没表达清楚,是在线程里调用sleep,但是进程不主塞,本线程是阻塞的!
回复 支持 反对

使用道具 举报

发表于 2005-11-10 22:46:23 | 显示全部楼层
我试验了一下, 在Linux2.6内核上确实是只阻塞线程.  估计和Linux2.6使用了内核线程有关吧.
sleep不是线程安全的. 线程延时可以参考下面这个连接的做法:
http://www.gd-linux.org/bbs/archive/index.php/t-665.html
回复 支持 反对

使用道具 举报

发表于 2005-11-11 14:06:12 | 显示全部楼层
Post by kj501
我试验了一下, 在Linux2.6内核上确实是只阻塞线程.  估计和Linux2.6使用了内核线程有关吧.
sleep不是线程安全的. 线程延时可以参考下面这个连接的做法:
http://www.gd-linux.org/bbs/archive/index.php/t-665.html


嗯,linux 从一开始支持线程的时候,内核线程和用户线程的关系就是 1:1,到了现在的nptl一直没有改变
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表