critical("Can not create lock file {$lock_file}\n"); throw new ZMKnownException('E99999', 'Can not create lock file ' . $lock_file); } if (!flock(self::$lock_file_handle[$name], LOCK_EX)) { logger()->error("File Lock \"{$name}\"already exists.\n"); } } /** * 解锁 * * @param string $name 锁名 */ public static function unlock(string $name) { if ((self::$lock_file_handle[$name] ?? false) !== false) { fclose(self::$lock_file_handle[$name]); } } }