99 lines
2.6 KiB
C#
99 lines
2.6 KiB
C#
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);
|
||
|
||
}
|
||
}
|