Files
YunTongJackYunTask/Reportapi/MyCode.Project.Infrastructure/Cache/IMyCodeCacheService.cs
2025-07-04 09:50:02 +08:00

99 lines
2.6 KiB
C#
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace MyCode.Project.Infrastructure.Cache
{
public interface IMyCodeCacheService
{
/// <summary>
/// 根据key得到缓存值
/// </summary>
/// <param name="key">缓存key</param>
/// <returns></returns>
object Get(string key);
/// <summary>
/// 根据缓存Key返回一个具体的对象
/// </summary>
/// <typeparam name="T"></typeparam>
/// <param name="key"></param>
/// <returns></returns>
T Get<T>(string key);
/// <summary>
/// 设置缓存
/// </summary>
/// <param name="key">缓存Key</param>
/// <param name="cache_object">缓存对象</param>
/// <param name="expiration">过期时间</param>
void Set(string key, object cache_object, TimeSpan? expiration=null);
/// <summary>
/// 根据key删除一个缓存
/// </summary>
/// <param name="key"></param>
void Delete(string key);
/// <summary>
/// 判断是否存在缓存
/// </summary>
/// <param name="key"></param>
/// <returns></returns>
bool Exists(string key);
/// <summary>
/// 放入队列
/// </summary>
/// <param name="key"></param>
/// <param name="data"></param>
void Push(string key, object data);
/// <summary>
/// Popup(获取第一条数据,并删除)
/// </summary>
/// <param name="key"></param>
/// <returns></returns>
object Popup(string key);
/// <summary>
/// 自增1返回自增后的值
/// </summary>
/// <param name="key"></param>
/// <returns></returns>
long Incr(string key,long value = 1);
/// <summary>
/// 初始化原子性的功能
/// </summary>
/// <param name="key"></param>
/// <param name="data"></param>
void SetIncr(string key, long data);
/// <summary>
/// 得到Incr值
/// </summary>
/// <param name="key"></param>
/// <returns></returns>
object GetIncr(string key);
/// <summary>
/// 得到新的id
/// </summary>
/// <param name="key"></param>
/// <returns></returns>
long GetNewId();
/// <summary>
/// 返回列表长度
/// </summary>
/// <param name="key"></param>
/// <returns></returns>
long ListLen(string key);
}
}