Provides mutual exclusion on a file using flock(2).
flock(2)
When this structure is dropped, the file will be unlocked.
Acquires the file lock, blocking the current thread until it can.
Attempts to acquire the file lock, returning None if it is locked.
None