在 Unix 中,Go 可以這樣做:// func Mmap(fd int, offset int64, length int, prot int, flags int) (data []byte, err error)syscall.Mmap(., ., ., ., syscall.MAP_SHARED|syscall.XXX)在 Windows 中,你可以使用這個(gè):https://github.com/golang/go/blob/master/src/syscall/zsyscall_windows.go#L970-L981// func CreateFileMapping(fhandle Handle, sa *SecurityAttributes, prot uint32, maxSizeHigh uint32, maxSizeLow uint32, name *uint16) (handle Handle, err error)syscall.CreateFileMapping(., ., syscall.PAGE_READONLY, ., ., nil)但是我沒有看到CreateFileMappingWindows 的任何標(biāo)志參數(shù)。有人知道如何傳遞標(biāo)志來(lái)CreateFileMapping發(fā)揮作用syscall.MAP_SHARED|syscall.XXX嗎?
1 回答

慕沐林林
TA貢獻(xiàn)2016條經(jīng)驗(yàn) 獲得超9個(gè)贊
看起來(lái)您可以從該 syscall 的 Windows 參考中獲取保護(hù)標(biāo)志的整數(shù)值。似乎沒有與 Unix-y 標(biāo)志的一對(duì)一映射,例如,沒有共享地圖的標(biāo)志,當(dāng)您傳遞文件名時(shí),似乎默認(rèn)情況下您會(huì)獲得共享地圖。
- 1 回答
- 0 關(guān)注
- 210 瀏覽
添加回答
舉報(bào)
0/150
提交
取消