国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

Linux信號量的SEM_UNDO標志

2019-11-08 18:25:57
字體:
來源:轉載
供稿:網友
信號量通過控制其他通信資源來實現進程間通信,在此過程中負責數據的互斥、同步等功能,主要函數semget,semop,semctl。semop函數主要功能為對信號量進行P/V操作。函數原型為:int semop(int semid,struct sembuf* sops,unsigned nsops);sembuf結構如下圖:semop操作的sembuf結構的sem_flg成員ipC_NOWAIT和SEM_UNDO。       1.sem_flg公認的標志是 IPC_NOWAIT 和 SEM_UNDO。如果操作指定SEM_UNDO,它將會自動撤消該進程終止時。在標準操作程序中的操作是在數組的順序執行、原子的,那就是,該操作要么作為一個完整的單元,要么不。如果不是所有操作都可以立即執行的系統調用的行為取決于在個人sem_flg領域的IPC_NOWAIT標志的存在。       2.sembuf結構的sem_flg成員為SEM_UNDO時,它將使操作系統跟蹤當前進程對這個信號量的修改情況,如果這個進程在沒有釋放該信號量的情況下終止,操作系統將自動釋放該進程持有的信號量.       3.只有將 sem_flg 指定為 SEM_UNDO 標志后,semadj (所指定信號量針對調用進程的調整值)才會新.此外,如果此操作指定SEM_UNDO,系統更新過程中會撤消此信號燈的計數(semadj)。此操作可以隨時進行,它永遠不會強制等待的過程。調用進程必須有改變信號量集的權限。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 岳普湖县| 平江县| 无棣县| 建宁县| 绥中县| 德钦县| 韶关市| 奎屯市| 定州市| 布尔津县| 武鸣县| 桂平市| 聂拉木县| 佛山市| 上虞市| 柳江县| 沐川县| 大足县| 怀化市| 河曲县| 巴青县| 五寨县| 沅江市| 德令哈市| 肇庆市| 方山县| 措勤县| 津市市| 延津县| 德江县| 天镇县| 营口市| 上杭县| 常德市| 甘孜| 宁强县| 临泉县| 南皮县| 郧西县| 佳木斯市| 龙里县|