optuna.storages.journal.JournalFileSymlinkLock

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

NFSv2以降の環境でプロセス同期を行うためのロッククラス。

ロック取得時にリンクシステムコールを呼び出し、排他的なファイルを作成する。ロックが解放されるとファイルは削除される。NFSv3以前のNFS環境では、

JournalFileOpenLock の代わりに使用する。

Parameters:
  • filepath (str) – 競合状態を保護したいファイルのパス

  • grace_period (int | None) – 既存のロックを強制解除するまでの猶予時間

メソッド

acquire()

Acquire a lock in a blocking way by creating a symbolic link of a file.

release()

Release a lock by removing the symbolic link.

acquire()[source]

ファイルのシンボリックリンクを作成することで、ブロックモードでロックを取得する。

Returns:

self._lock_target_file のシンボリックリンク作成に成功した場合に True を返す。

Return type:

bool

release()[source]

シンボリックリンクを削除することでロックを解放する。

Return type:

None