Creates a lock file on disk containing a message that should identify the current R session. Will return FALSE is someone else has already made a lockfile. In order to avoid race conditions typical on NFS mounted drives makelock appends a unique message to the lock file and then reads the file back in. Only if the unique message is the first line in the file will makelock return TRUE.

removelock displays a warning and returns false if lockfile cannot be removed. No error message is given if the file does not exist.

makelock(lockfile, lockmsg, CreateDirectories = TRUE)

removelock(lockfile)

Arguments

lockfile

Path to lockfile

lockmsg

Character vector with message to be written to lockfile

CreateDirectories

Recursively create directories implied by lockfile path

Value

logical indicating success

Author

jefferis

Examples

makelock(lock<-tempfile())
#> [1] TRUE
stopifnot(!makelock(lock))
removelock(lock)
#> [1] TRUE