如果你不知道futex和linuxthreads 0.9是什么,请不要回复。
我可以在一个程序中混合基于futex的互斥量和linuxthreads 0.8或-0.9 (在所有glibc <=2.2和所有uClibc中使用的互斥量)的互斥量吗?
我需要进程间互斥(pshared one,PTHREAD_PROCESS_SHARED)。
那么,如果线程是由linuxthreads启动和管理的,它会被基于pthread_manager的睡眠和唤醒所混淆吗?
我可以将基于futex的互斥锁同时用于进程间和线程间同步吗?
发布于 2010-02-11 02:14:35
我不明白你为什么不能。
很明显,你将不能使用pthread。您可能会将pthread库与旧的互斥锁一起使用,并且需要将futex代码放在其他库中。
显然,您不能使用futex函数锁定linuxthread互斥锁并将其解锁,这永远不会起作用。
但是,如果一个线程在内核中被阻塞,等待futex,我看不出这与在磁盘I/O操作上被阻塞有什么不同,linuxthread可以很好地处理这一问题。
https://stackoverflow.com/questions/2239191
复制相似问题