optuna.storages.journal.JournalFileOpenLock

class optuna.storages.journal.JournalFileOpenLock(filepath, grace_period=30)[source]

用于同步 NFSv3 或更高版本进程的锁类。

获取锁时,会调用带有 O_EXCL 选项的 open 系统调用来创建一个独占文件。释放锁时,该文件将被删除。此类仅在内核 2.6 或更高版本上使用 NFSv3 或更高版本时支持。在先前的 NFS 环境中,请使用 JournalFileSymlinkLock

参数:
  • filepath (str) – 需要保护其竞争条件的文件路径。

  • grace_period (int | None) – 在现有锁被强制释放之前的宽限期。

方法

acquire()

通过创建锁文件以阻塞方式获取锁。

release()

通过删除创建的文件来释放锁。

acquire()[source]

通过创建锁文件以阻塞方式获取锁。

返回:

True 如果成功创建了 self._lock_file

返回类型:

bool

release()[source]

通过删除创建的文件来释放锁。

返回类型:

None