github.com/Andyfoo/golang/x/sys@v0.0.0-20190901054642-57c1bf301704/unix/example_flock_test.go (about) 1 // Copyright 2018 The Go Authors. All rights reserved. 2 // Use of this source code is governed by a BSD-style 3 // license that can be found in the LICENSE file. 4 5 // +build darwin dragonfly freebsd linux netbsd openbsd solaris 6 7 package unix_test 8 9 import ( 10 "log" 11 "os" 12 13 "github.com/Andyfoo/golang/x/sys/unix" 14 ) 15 16 func ExampleFlock() { 17 f, _ := os.Create("example.lock") 18 if err := unix.Flock(int(f.Fd()), unix.LOCK_EX); err != nil { 19 log.Fatal(err) 20 } 21 // Do work here that requires the lock. When finished, release the lock: 22 if err := unix.Flock(int(f.Fd()), unix.LOCK_UN); err != nil { 23 log.Fatal(err) 24 } 25 }