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 7package unix_test 8 9import ( 10 "log" 11 "os" 12 13 "golang.org/x/sys/unix" 14) 15 16func 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} 26