# go-filemutex **Repository Path**: mirrors_back/go-filemutex ## Basic Information - **Project Name**: go-filemutex - **Description**: mirrors of https://github.com/alexflint/go-filemutex - **Primary Language**: Unknown - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2022-06-30 - **Last Updated**: 2022-07-01 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # FileMutex FileMutex is similar to `sync.RWMutex`, but also synchronizes across processes. On Linux, OSX, and other POSIX systems it uses the flock system call. On windows it uses the LockFileEx and UnlockFileEx system calls. ```go import ( "log" "github.com/alexflint/go-filemutex" ) func main() { m, err := filemutex.New("/tmp/foo.lock") if err != nil { log.Fatalln("Directory did not exist or file could not created") } m.Lock() // Will block until lock can be acquired // Code here is protected by the mutex m.Unlock() } ``` ### Installation go get github.com/alexflint/go-filemutex Forked from https://github.com/golang/build/tree/master/cmd/builder/filemutex_*.go