Du kan inte välja fler än 25 ämnen Ämnen måste starta med en bokstav eller siffra, kan innehålla bindestreck ('-') och vara max 35 tecken långa.

flock.go 391B

123456789101112131415161718192021222324
  1. //go:build !plan9
  2. package flock
  3. import (
  4. "errors"
  5. "github.com/gofrs/flock"
  6. )
  7. var (
  8. CouldntAcquire = errors.New("Couldn't acquire flock (is another Ergo running?)")
  9. )
  10. func TryAcquireFlock(path string) (fl Flocker, err error) {
  11. f := flock.New(path)
  12. success, err := f.TryLock()
  13. if err != nil {
  14. return nil, err
  15. } else if !success {
  16. return nil, CouldntAcquire
  17. }
  18. return f, nil
  19. }