日期:2014-05-16  浏览次数:20727 次

子进程继承锁的问题
看APUE都搞糊涂了.....
在12.9节线程和fork这节说“子进程通过继承整个地址空间的副本,也从父进程那里继承了所有互斥量,读写锁和条件变量的状态。”
但是14.3节又说“有fork产生的子进程不继承父进程所设置的锁”。
都搞糊涂了,到底这两句话有应该怎么理解啊?

------解决方案--------------------
一个是记录锁,一个是互斥锁,记录锁是以文件的形式存在的,独立于进程本身,所以fork后不继承。而互斥锁对应的是一个数据结构,存在于内存里面,所以fork后会继承。