我的问题是,比如实现进程的同步,我在创建子进程之间创建信号量,在fork之后,不是父子进程拥有独立的数据空间吗?
那么父子进程的PV操作如何影响同一个信号量的呢,比如父进程先P操作,若信号量初始值为0,此时为0-1=-1,但是这个不是父进程的吗?
子进程为什么其中的信号量也-1了呢?
你就是纳闷父子进程是独立的,但是为什么信号量操作却可以共用是吧。
是这样的,你不管在哪个进程创建了信号量,对这个信号量分配的句柄是由操作系统统一管理的。
你应该把父子进程看成两个独立的进程,不管是谁创建的信号量,对于一个操作系统内,都是一样的。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。