Chinaunix
标题:
请教:pthread条件变量和互斥量是通过那些系统调用实现的?
[打印本页]
作者:
scklotz
时间:
2006-01-15 08:57
标题:
请教:pthread条件变量和互斥量是通过那些系统调用实现的?
条件变量和windows下的事件有和区别?
谢谢!
作者:
richardhesidu
时间:
2006-01-15 09:49
不太清楚, 不过用strace跟踪程序运行就可以看出来了.
作者:
julianzh
时间:
2006-01-15 17:13
提示:
作者被禁止或删除 内容自动屏蔽
作者:
eexplorer
时间:
2006-01-16 08:54
标题:
回复 1楼 scklotz 的帖子
在Linux里是通过sys_futex实现的
作者:
scklotz
时间:
2006-01-16 09:08
在windows下,任何线程只要设置 Event 为有信号
任何线程包括自己都可以等待该事件的状态
但是好像linux下还要通过一个互斥量来访问信号量
而且这些操作有可能失败
比如等待时 pthread_mutex_lock 以及 pthread_mutex_timedwait
其中pthread_mutex_timedwait 会莫名其妙的返回
而且我也大概扫了一下glibc中互斥量和条件变量的实现代码,也没有找到显眼的系统调用的代码
不知各位linux高手如何处理错误的情况
就像windows下面处理Event那样
能够让程序健壮的运行?
欢迎光临 Chinaunix (http://bbs.chinaunix.net/)
Powered by Discuz! X3.2