2014-10-20 47 views
3

當在Centos6上調用os.OpenFile時,會在文件句柄上設置O_CLOEXEC標誌。我不認爲有可能避免設置標誌。例如,下面的調用:如何清除go-on-exec標誌?

f, err := os.OpenFile("lockfile", os.O_CREATE|os.O_RDWR, 0666) 

看起來像這樣在strace的:

[pid 2928] open("lockfile", O_RDWR|O_CREAT|O_CLOEXEC, 0666) = 3 

syscall.CloseOnExec提供設置近on-exec標誌爲一個給定的文件句柄,但我可以找不到用於清除關閉執行標誌的相應函數。

如何清除文件的close-on-exec標誌?

回答