Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
在具有写时复制分叉的 Linux 上。在父级中创建 pthread 进程间互斥体时,它会在子级中有效还是只有在我将其映射到共享内存时才会起作用?
当调用fork()整个内存空间时,包括互斥锁,所以要回答你的问题,新的互斥锁将是父级互斥锁的副本,所以你必须这样mmap做。
fork()
mmap
注意:您需要PTHREAD_PROCESS_SHARED在 mutex 属性上使用pthread_mutexattr_getpshared().
PTHREAD_PROCESS_SHARED
pthread_mutexattr_getpshared()