本文整理汇总了C++中NF_SHARE_PTR::EXPIRE方法的典型用法代码示例。如果您正苦于以下问题:C++ NF_SHARE_PTR::EXPIRE方法的具体用法?C++ NF_SHARE_PTR::EXPIRE怎么用?C++ NF_SHARE_PTR::EXPIRE使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类NF_SHARE_PTR
的用法示例。
在下文中一共展示了NF_SHARE_PTR::EXPIRE方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: SaveRecordInfo
bool NFCCommonRedisModule::SaveRecordInfo(const NFGUID & self, const NFMsg::ObjectRecordList& xRecordData, const int nExpireSecond)
{
if (self.IsNull())
{
return false;
}
NF_SHARE_PTR<NFIRedisClient> pDriver = m_pNoSqlModule->GetDriverBySuit(self.ToString());
if (!pDriver)
{
return false;
}
std::vector<std::string> vKeyList;
std::vector<std::string> vValueList;
for (int i = 0; i < xRecordData.record_list_size(); ++i)
{
const NFMsg::ObjectRecordBase& xRecord = xRecordData.record_list(i);
std::string strValue;
if (!xRecord.SerializeToString(&strValue))
{
continue;
}
vKeyList.push_back(xRecord.record_name());
vValueList.push_back(strValue);
}
if (vKeyList.size() != vValueList.size())
{
return false;
}
std::string strKey = GetRecordCacheKey(self);
if (!pDriver->HMSET(strKey, vKeyList, vValueList))
{
return false;
}
if (nExpireSecond > 0)
{
pDriver->EXPIRE(strKey, nExpireSecond);
}
return true;
}
示例2: SavePropertyInfo
bool NFCCommonRedisModule::SavePropertyInfo(const NFGUID& self, NF_SHARE_PTR<NFIPropertyManager> pPropertyManager, const int nExpireSecond)
{
if (self.IsNull())
{
return false;
}
if (!pPropertyManager)
{
return false;
}
NF_SHARE_PTR<NFIRedisClient> pDriver = m_pNoSqlModule->GetDriverBySuit(self.ToString());
if (!pDriver)
{
return false;
}
std::vector<std::string> vKeyList;
std::vector<std::string> vValueList;
if (!ConvertPropertyManagerToVector(pPropertyManager, vKeyList, vValueList))
{
return false;
}
if (vKeyList.size() != vValueList.size())
{
return false;
}
std::string strKey= GetPropertyCacheKey(self);
if (!pDriver->HMSET(strKey, vKeyList, vValueList))
{
return false;
}
if (nExpireSecond > 0)
{
pDriver->EXPIRE(strKey, nExpireSecond);
}
return true;
}