40 lines
893 B
C++
40 lines
893 B
C++
#pragma once
|
|
/**
|
|
* @file eqpalg/utility/instance_lock.h
|
|
* @brief 算法实例锁
|
|
* @author Cat (null.null.null@qq.com)
|
|
* @version 0.1
|
|
* @date 2021-09-17
|
|
*
|
|
* Copyright: Baosight Co. Ltd.
|
|
* DO NOT COPY/USE WITHOUT PERMISSION
|
|
*
|
|
*/
|
|
#include <string>
|
|
#include <optional>
|
|
namespace utility {
|
|
/**
|
|
* @brief 为文件上锁,防止多个文件读写错误
|
|
* @param ruleId 算法id
|
|
* @return true 上锁成功
|
|
* @return false 上锁失败
|
|
*/
|
|
bool lock_file(std::string ruleId);
|
|
|
|
/**
|
|
* @brief 解锁上锁的算法id
|
|
* @param ruleId 算法id
|
|
* @return true 解锁成功
|
|
* @return false 解锁失败
|
|
*/
|
|
bool unlock_file(std::string ruleId);
|
|
|
|
/**
|
|
* @brief 算法是否上锁
|
|
* @param ruleId 算法id
|
|
* @return true
|
|
* @return false
|
|
*/
|
|
bool is_file_locked(std::string ruleId);
|
|
} // namespace utility
|