code: def acquire_lock(path: str, blocking: bool) -> Generator[Optional[int], None, None]:
      
      try:
          with open(path, "w+") as lockfile:
              if not blocking:
                  lock_command = fcntl.LOCK_EX | fcntl.LOCK_NB
              else:
                  lock_command = fcntl.LOCK_EX
  
              fcntl.lockf(lockfile.fileno(), lock_command)
              yield lockfile.fileno()
              fcntl.lockf(lockfile.fileno(), fcntl.LOCK_UN)
  
      except FileNotFoundError:
          yield
docs: Raises an OSError if the lock can't be acquired