-
msync
鎖定
msync是一個計算機系統函數。
- 外文名
- msync
- 屬 性
- 計算機系統函數
msync函數簡介
刷新變化函數msync( )
進程在映射空間的對共享內容的改變並不直接寫回到磁盤文件中,往往在調用munmap( )後才執行該操作。
可以通過調用msync( )函數來實現磁盤文件內容與共享內存區中的內容一致,即同步操作.
msync函數原型
int msync ( void * addr, size_t len, int flags)
msync頭文件
#include<sys/mman.h>
msync參數
addr:文件映射到進程空間的地址;
len:映射空間的大小;
flags:刷新的參數設置,可以取值MS_ASYNC/ MS_SYNC/ MS_INVALIDATE
其中:
取值為MS_ASYNC(異步)時,調用會立即返回,不等到更新的完成;
取值為MS_SYNC(同步)時,調用會等到更新完成之後返回;
取MS_INVALIDATE(通知使用該共享區域的進程,數據已經改變)時,在共享內容更改之後,使得文件的其他映射失效,從而使得共享該文件的其他進程去重新獲取最新值;
msync返回值
成功則返回0;失敗則返回-1;
msync可能的錯誤
EBUSY/ EINVAL/ ENOMEM
- 詞條統計
-
- 瀏覽次數:次
- 編輯次數:8次歷史版本
- 最近更新: 亡命听