程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 更多編程語言 >> 編程解疑 >> 數據-想請問linux應用程序使用信號量實現PV操作的問題

數據-想請問linux應用程序使用信號量實現PV操作的問題

編輯:編程解疑
想請問linux應用程序使用信號量實現PV操作的問題

我的問題是,比如實現進程的同步,我在創建子進程之間創建信號量,在fork之後,不是父子進程擁有獨立的數據空間嗎?
那麼父子進程的PV操作如何影響同一個信號量的呢,比如父進程先P操作,若信號量初始值為0,此時為0-1=-1,但是這個不是父進程的嗎?
子進程為什麼其中的信號量也-1了呢?


最佳回答:


你就是納悶父子進程是獨立的,但是為什麼信號量操作卻可以共用是吧。

是這樣的,你不管在哪個進程創建了信號量,對這個信號量分配的句柄是由操作系統統一管理的。

你應該把父子進程看成兩個獨立的進程,不管是誰創建的信號量,對於一個操作系統內,都是一樣的。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved